텍스트 파일에 포함된 도스 스타일의 줄 끝 문자(^M
, 즉 carriage return, \r
)를 제거하려면 여러 가지 방법을 사용할 수 있습니다. 주로 이 문제는 Windows에서 작성된 파일을 Unix/Linux 시스템에서 열 때 발생합니다. Unix/Linux는 줄 끝을 나타내는 데 개행 문자(\n
)만 사용하지만, Windows는 carriage return과 개행(\r\n
)을 함께 사용하기 때문입니다.
다음은 ^M
문자를 제거하는 방법들입니다:
1. dos2unix
명령어 사용
가장 간단한 방법은 dos2unix
유틸리티를 사용하는 것입니다. 이 도구는 파일에서 Windows 스타일의 줄 끝을 Unix 스타일로 변환해줍니다.
dos2unix filename
filename
: 변환할 파일의 이름입니다.- 이 명령을 실행하면 파일의
^M
문자가 자동으로 제거됩니다.
2. Vim에서 ^M
제거하기
Vim을 사용하여 ^M
문자를 직접 제거할 수도 있습니다.
Vim으로 파일을 엽니다:
vim filename
Vim에서
^M
문자를 찾고 제거하는 명령을 입력합니다.^M
문자를 입력하려면Ctrl+V
를 누른 후Ctrl+M
을 누릅니다::%s/\r//g
- 이 명령은 파일 전체에서
\r
(carriage return)을 찾아서 제거합니다.
- 이 명령은 파일 전체에서
파일을 저장하고 종료합니다:
:wq
3. sed
명령어 사용
sed
명령어를 사용하여 파일에서 ^M
문자를 제거할 수 있습니다.
sed -i 's/\r//g' filename
filename
:^M
문자를 제거할 파일의 이름입니다.- 이 명령은 파일 전체에서
\r
문자를 찾아서 제거합니다.
4. tr
명령어 사용
tr
명령어를 사용하여 carriage return을 제거할 수도 있습니다.
tr -d '\r' < inputfile > outputfile
inputfile
: 원본 파일의 이름입니다.outputfile
:^M
문자가 제거된 파일을 저장할 대상 파일의 이름입니다.- 원본 파일을 덮어쓰려면 다음과 같이 할 수 있습니다:
tr -d '\r' < inputfile > temp && mv temp inputfile
이러한 방법들 중에서 상황에 맞는 방법을 선택해 파일에서 ^M
문자를 제거할 수 있습니다.
'IT > 리눅스' 카테고리의 다른 글
vi - gf 로 파일열기시 환경변수 있어도 가능하게 (0) | 2024.08.28 |
---|---|
윈도우 WSL 에서 csh 사용하기 (0) | 2024.08.19 |
Vim - 파일 오픈 여러개 한 이후 화면 돌아가기 (0) | 2024.07.12 |
Bash 쉘 vs C 쉘 스크립트 간단 차이점 (0) | 2024.05.24 |
리눅스에서 큰 폴더 찾기: du 명령어 활용법 (0) | 2024.05.23 |