문자를 모르고 파일의 마지막 문자를 sed로 바꾸는 방법

문자를 모르고 파일의 마지막 문자를 sed로 바꾸는 방법

파일의 마지막 문자를 바꾸고 싶습니다.

  1. 그 캐릭터가 뭔지 모르겠어요.
  2. 내가 아는 전부는 그 위치: 파일의 끝입니다.

파일을 생성하고 echo -n -e '1234\n5X78\nX' >> test.file전달해 보겠습니다.

$ cat test.file
1234
5X78
X

마지막 줄에는 개행 문자가 없습니다.

마지막 문자를 알면 이를 바꾸는 방법을 알 수 있습니다 X.

sed '$s/X/0/' test.file
1234
5X78
0

그런데 아까 말했듯이 마지막 글자는 모르겠어요.

답변1

sed를 사용하세요:

sed 's/.$/0/' test.file

.모든 문자를 정의하며 $줄의 끝입니다. 따라서 0이 예에서는 각 줄의 마지막 문자를 바꾸게 됩니다.

sed '$s/.$/0/' test.file

수행해야 하는 작업 앞에 추가하면 $마지막 행에만 해당 작업이 적용됩니다.

답변2

간단합니다 .$. 다음을 사용하세요.

sed '$s/.$/0/' test.file
  • ."모든" 문자입니다.
  • $줄의 끝입니다.

따라서 마지막 줄 끝의 마지막 문자를 바꾸는 것입니다.

관련 정보