데이터 행 후 여유 행/열 공간을 정리하는 방법

데이터 행 후 여유 행/열 공간을 정리하는 방법

데이터의 마지막 행 아래에 불필요한 여유 공간이 있는 파일을 정리하는 데 문제가 있습니다. 엑셀에서 데이터를 복사해서 텍스트에 붙여넣을 때 생성됩니다. 내 텍스트 파일이 내 데이터에만 맞도록 하고 싶습니다. 이렇게 하면 모델을 실행할 때 계산 시간이 단축됩니다. 데이터의 마지막 행 아래에 추가 여유 공간이 있기 때문에 파일 크기가 크다는 것을 방금 알게 되었습니다.

원하지 않는 행을 정리하는 방법을 도와주셨으면 좋겠습니다.

답변1

awk '{l=l$0 RT};NF{printf "%s",l;l=""}' < your-file

후행 공백 줄이 제거됩니다.

파일이 큰 경우 공백이 아닌 첫 번째 줄을 찾을 때까지 끝부터 읽어야 할 수도 있습니다.

GNU 도구 사용:

tac your-file | sed -ne '/[^[:blank:]]/!{p;d;}' -e q | wc -c

후행 빈 줄의 크기를 반환합니다.

이를 사용하여 파일을 자를 수 있습니다.

예를 들어 bash:

find . -type f -name '*.txt' -print0 |
  while IFS= read -rd '' file; do
    n=$(tac "$file" | sed -ne '/[^[:blank:]]/!{p;d;}' -e q | wc -c)
    [ "$n" -eq 0 ] || truncate -r "$file" "-s-$n" "$file"
  done

관련 정보