Linux는 텍스트 서식 지정과 편집을 위한 다양한 명령을 제공하며, 특히 유용한 명령 중 하나는 nl 명령입니다. 이 도구를 사용하면 텍스트 파일이나 입력의 각 행에 행 번호를 추가하여 내용을 더 쉽게 읽고 정리할 수 있습니다.
nl 명령은 무엇을 합니까?
이 nl 명령은 텍스트 파일의 내용을 표시하며, 행 번호 가 기본적으로 비어 있지 않은 행에 추가됩니다. 스크립트를 다루거나 큰 파일을 검토할 때 특히 유용하며, 디버깅이나 편집 시 행 번호를 추적하는 것이 중요합니다.
사용 예: nl 명령
다음 스크립트를 포함하는 hello-world.sh 파일이 있다고 가정해 보세요.
#!/bin/bash
#
#This is a demo script that greets the world
#Author: Jose Navarro Varela
#Usage: ./hello-world.sh
clear
echo hello world
exit 0
행 번호와 함께 파일을 표시하려면 다음 명령을 실행하기만 하면 됩니다.
nl hello-world.sh
출력은 다음과 같이 표시됩니다.
1 #!/bin/bash
2 #
3 #This is a demo script that greets the world
4 #Author: Jose Navarro Varela
5 #Usage: ./hello-world.sh
6 clear
7 echo hello world
8 exit 0
기본적으로 nl 명령은 비어 있지 않은 행에만 번호를 매깁니다.
모든 행에 번호 매기기(빈 행 포함)
번호 매기기에 빈 행을 포함하려면 -b a 옵션을 사용하세요:
nl -b a hello-world.sh
출력은 다음과 같이 표시됩니다.
1 #!/bin/bash
2 #
3 #This is a demo script that greets the world
4 #Author: Jose Navarro Varela
5 #Usage: ./hello-world.sh
6
7 clear
8 echo hello world
9 exit 0
사용자 지정 구분자 추가하기
이 nl 명령을 사용하면 -s 옵션을 이용해 행 번호와 텍스트 사이의 구분자를 사용자 지정할 수 있습니다. 예를 들어 ... 을(를) 구분자로 추가하려면:
nl -s "..." hello-world.sh
출력은 다음과 같이 표시됩니다.
1...#!/bin/bash
2...#
3...#This is a demo script that greets the world
4...#Author: Jose Navarro Varela
5...#Usage: ./hello-world.sh
6...
7...clear
8...echo hello world
9...exit 0
추가 옵션
이 nl 명령은 사용자 지정을 위한 더 많은 옵션을 제공합니다. 예를 들면 다음과 같습니다.
-w: 행 번호 필드의 너비를 지정합니다.-n: 번호 매기기 형식을 정의합니다(오른쪽 정렬, 왼쪽 정렬 또는 0으로 채우기).
다음 명령으로 매뉴얼 페이지를 확인하면 사용 가능한 모든 옵션을 살펴볼 수 있습니다.
man nl
nl 명령의 일반적인 사용 사례
이 nl 명령은 다양한 상황에서 널리 사용됩니다. 아래에 가장 일반적인 시나리오 중 일부를 소개합니다.
1. 셸 스크립트 디버깅
셸 스크립트를 디버깅할 때는 오류가 발생하는 특정 행을 참조해야 할 수 있습니다. nl 명령을 사용해 행 번호를 추가하면 문제가 있는 행을 더 쉽게 찾을 수 있습니다.
예:
nl my-script.sh
2. 문서 또는 코드 리뷰 준비
검토를 위해 스크립트나 코드 조각을 공유할 때 행 번호를 추가하면 내용을 더 쉽게 읽을 수 있고 논의 중에 참조하기 쉬워집니다.
예:
nl config.conf > numbered-config.conf
3. 큰 텍스트 파일 검토
큰 로그 파일, 구성 파일 또는 데이터 파일을 다룰 때 행 번호를 추가하면 탐색하고 특정 섹션을 참조하는 데 도움이 됩니다.
예:
nl /var/log/syslog
4. 행 번호와 함께 파일 비교하기
파일을 비교하기 전에 행 번호를 추가하면 차이점을 더 쉽게 식별할 수 있습니다.
예:
nl file1.txt > numbered-file1.txt
nl file2.txt > numbered-file2.txt
diff numbered-file1.txt numbered-file2.txt
5. 보고서용 출력 서식 지정하기
이 nl 명령은 명확성을 위해 번호가 매겨진 행이 필요한 보고서나 프레젠테이션용으로 텍스트 파일의 서식을 지정하는 데 사용할 수 있습니다.
예:
nl report.txt > numbered-report.txt
6. 빈 행에도 행 번호를 표시하여 스크립트 보기
스크립트에는 가독성에 중요한 빈 행이 포함된 경우가 있습니다. -b a 옵션을 사용하면 빈 행을 포함한 모든 행에 번호를 매길 수 있습니다.
예:
nl -b a script.sh
7. 특정 형식에 맞게 행 번호 사용자 지정하기
번호가 매겨진 텍스트 파일을 표시할 때는 사용자 지정 구분자나 서식이 필요할 수 있습니다.
예:
nl -s " -> " textfile.txt
nl 명령을 사용하는 이유는 무엇인가요?
이 nl 명령은 다음과 같은 용도로 사용할 수 있는 간단하면서도 강력한 도구입니다.
- 특정 행을 식별하여 스크립트를 디버깅하는 것.
- 텍스트 파일에 행 번호를 추가하여 탐색을 쉽게 하는 것.
- 문서 작성이나 공유를 위해 서식이 지정된 출력을 준비하는 것.