dos2unix - 텍스트 파일의 줄 구분자(Line separator) 변경
- 리눅스(Linux) 활용
- 2021. 12. 28.
본 글에서는 윈도우 방식의 줄 구분자(\r\n)가 포함된 텍스트 파일을 리눅스 방식의 줄 구분자(\n)로 변환해 주는 방법에 대해 설명합니다.
줄 구분자 (Line separator)
우리가 사용하는 텍스트 파일 내 각 줄의 끝에는 줄 구분자(Line separator)가 포함되어 있습니다.
편집기 프로그램들은 텍스트 파일을 열 때, 줄 구분자가 있는 부분에서 개행(줄바꿈)을 하여 화면에 표시합니다.
예를 들어 다음과 같이 두 줄이 포함된 텍스트 파일이 있다고 가정해 보겠습니다.
안녕하세요 오늘도야근 블로그입니다.
반갑습니다.
위 텍스트 파일은 실제로는 다음과 같이 저장되어 있습니다.
(리눅스와 macOS 등 유닉스 계열의 운영체제에서는 줄 구분자로 "\n"을 사용합니다)
안녕하세요 오늘도야근 블로그입니다.\n반갑습니다.
문제는, 유닉스 계열의 운영체제와 윈도우즈 운영체제가 사용하는 줄 구분자가 서로 다르다는 것입니다.
유닉스 계열의 운영체제는 줄 구분자로 "\n"을 사용하고, 윈도우즈는 "\r\n"을 사용합니다. 그러다 보니, 한쪽의 운영체제에서 생성한 텍스트 파일이 다른 운영체제에서는 제대로 인식되지 않습니다.
따라서 하나의 텍스트 파일을 윈도우즈와 유닉스 계열 운영체제 사이에서 교차로 사용하려면 이를 변환해 줄 필요가 있습니다.
dos2unix
윈도우 방식의 줄 구분자(\r\n)가 포함된 텍스트 파일을 리눅스 방식의 줄 구분자(\n)로 변환하기 위해서 dos2unix라는 유틸리티를 사용할 수 있습니다. dos2unix 유틸리티는 리눅스에 설치되며, 실행 시 텍스트 파일 내에 포함된 줄 구분자를 모두 리눅스 방식의 줄 구분자로 변경해 주는 기능을 지원합니다.
우분투 리눅스에서 다음과 같이 실행하여 dos2unix 유틸리티를 설치합니다.
sudo apt install dos2unix
설치가 완료되면, 다음과 같이 실행하여 텍스트 파일의 줄 구분자를 변경할 수 있습니다. sample.txt 라는 파일 내 모든 줄 구분자를 리눅스 방식으로 변경해 줍니다.
dos2unix sample.txt
이와 같이 dos2unix 유틸리티를 사용하면 두 운영체제 사이에서 발생하는 줄 구분자 문제를 해결해 줄 수 있습니다.
'리눅스(Linux) 활용' 카테고리의 다른 글
error while loading shared libraries 현상 해결방법 (1) | 2022.03.13 |
---|---|
iperf3 유틸리티를 이용한 장치간 네트워크 Throughput 측정하기 (0) | 2021.02.11 |
우분투(Ubuntu) 리눅스에 네트워크 관련 유틸리티 설치하기 (0) | 2020.03.19 |
리눅스 ip 유틸리티 사용법 : IPv4/IPv6 라우팅 테이블 관리 (0) | 2020.03.15 |
리눅스 ip 유틸리티 사용법 : IPv4/IPv6 주소 관리 (0) | 2020.03.14 |
우분투(Ubuntu) 리눅스에 ifconfig 설치하기 (0) | 2020.03.06 |
리눅스 시스템에서 IPv6 주소 설정/확인하기 (0) | 2020.03.06 |
xxd : 파일의 내용을 16진수 형식으로 확인(hex dump) (0) | 2020.02.10 |