파일에서 "\r\n"을 "\n"으로 바꾸는 가장 빠르고 핵심적인 방법은 무엇입니까?

파일에서 "\r\n"을 "\n"으로 바꾸는 가장 빠르고 핵심적인 방법은 무엇입니까?

나는 tr그것이 더 핵심적인 방법이고 아마도 주어진 파일 내의 항목을 대체하는 더 빠른 방법이라고 생각합니다.

그러나 tr은 동일한 양의 문자만 바꿀 수 있습니다. 의미...

2개의 문자는 2개의 문자로만 대체될 수 있습니다. 이는 대체를 의미합니다.

\r\n\n을(를) 통해 할 수는 없습니다 .tr

차선책은 무엇입니까 sed?

tr의 기능이 부족할 때 sed가 파일 \r\n로 대체하는 가장 핵심적이고 빠른 방법입니까 ?\n

가능하다면 예를 들어보고 싶습니다.

답변1

를 사용하면 sed다음을 수행할 수 있습니다.

sed 's/\r$//'

에서도 같은 방법으로 할 수 있으며 tr다음만 제거하면 됩니다 \r.

tr -d '\r'

비록 이것이 제거되겠지만모두, 필요하지 않음 의 인스턴스 \r다음에 \n.

답변2

또는 사용dos2unix

예를 들어:

$ echo -ne "1\r\n2" |  od -A n -t x1
 31 0d 0a 32
$ echo -ne "1\r\n2" | dos2unix | od -A n -t x1
 31 0a 32

\r\n우리는 다음 으로 대체되는 것을 볼 수 있습니다\n

관련 정보