파일로 가득 찬 폴더가 있는데 각 파일에는 수백 줄이 있습니다. 이러한 파일 중 상당수에는 가끔 줄 바꿈이 있습니다. vim에서 파일을 열면 많은 파일에 개행 문자가 있어야 할 위치에 ^M^L이 흩어져 있습니다.
vim에서는 %s/^M^L/\r/g
이것을 실행하여 문제를 수정할 수 있습니다. 그러나 모든 파일에 대해 이 작업을 수행하고 싶지는 않습니다.
그래서 나는 sed를 통해 bash 스크립트에서 이 작업을 시도했지만 성공하지 못했습니다. 나는 두 가지를 모두 시도했습니다.
sed 's/^M^L/\r/g' filename
그리고
sed 's/^M^L/\
/g' filename
참고: 저는 Shift-6(^) M뿐만 아니라 ^M^L이 여기에 나타날 때마다 ctrl-v ctrl-m을 수행했습니다.
내가 뭘 잘못했나요? 더 중요한 것은, 그것이 작동하도록 하려면 어떻게 해야 합니까?
답변1
다음을 수행할 수 있어야 합니다.
sed 's/\x0C//g`
또는
sed 's/\x0D\x0C/\x0D/g'
또는 GNU를 사용하는 경우sed
sed 's/\r\f/\r/'