![파일 끝에서 마지막 n 문자(\n \r 및 ^Z 포함) 제거(sed 사용)](https://linux55.com/image/212576/%ED%8C%8C%EC%9D%BC%20%EB%81%9D%EC%97%90%EC%84%9C%20%EB%A7%88%EC%A7%80%EB%A7%89%20n%20%EB%AC%B8%EC%9E%90(%5Cn%20%5Cr%20%EB%B0%8F%20%5EZ%20%ED%8F%AC%ED%95%A8)%20%EC%A0%9C%EA%B1%B0(sed%20%EC%82%AC%EC%9A%A9).png)
끝이 이상한 파일이 있습니다.
cat splitted.0473.csv | tail -c 8 | od -c
0000000 6 4 0 \r \n 032 \r \n
0000010
이것은 ( 032
라고^Z
문자 바꾸기).
파일 끝에서 마지막 3자(바이트?)를 제거하여 다음과 같이 보이도록 하고 싶습니다.
cat splitted.0473.csv | tail -c 8 | od -c
0000000 6 4 0 \r \n
0000010
몇 가지 예를 시도했지만 sed
성공하지 못했습니다. 나는 가정한다마지막 n자 삭제sed
(또는 다른 것)로 달성하기가 더 쉽습니다.^Z\r\n
파일 끝의 특정 문자 바꾸기.
답변1
다음을 사용하여 마지막 줄을 삭제할 수 있어야 합니다 sed
.
sed -i '$d' splitted.0473.csv
-->
$ printf '640\r\n\032\r\n' | sed '$d' | od -c
0000000 6 4 0 \r \n
0000005