nl — 줄 번호 붙이기
Linux / 리눅스 기본 명령어 / nl.html
텍스트 파일의 각 줄에 번호를 붙여 출력하는 명령어.
기본 정보
| 명령어 이름 | nl |
|---|---|
| 한 줄 소개 | 텍스트 파일의 각 줄에 번호를 붙여 출력하는 명령어. |
| 제공 | GNU coreutils |
| 공식 문서 | https://man7.org/linux/man-pages/man1/nl.1.html |
| 지원 운영체제 | Linux, macOS, BSD, WSL |
| 설치 여부 | 기본 탑재 |
| 분류 | 리눅스 기본 명령어 (태그: 리눅스 기본 명령어 (태그: nl, 줄 번호, 넘버링, cat)) |
이 명령어는 무엇인가?
nl은 입력의 각 줄 앞에 번호를 붙여 출력합니다. cat -n과 비슷하지만 빈 줄 처리와 번호 형식을 세밀하게 조정할 수 있습니다.
-b 옵션으로 번호를 붙일 대상(모든 줄, 비어 있지 않은 줄)을 정하고, -w로 자리 폭, -s로 구분자를 바꿉니다. 코드 조각을 인용할 때 줄 번호를 함께 보여 주기 좋습니다.
어떤 문제를 해결하는가?
- 코드나 설정 파일을 줄 번호와 함께 인용할 때
- 로그에서 특정 줄을 가리켜야 할 때
- 빈 줄은 제외하고 번호를 매기고 싶을 때
- 번호 자리 폭과 구분자를 맞춰 출력할 때
주요 기능
번호 매기기
각 줄 앞에 순번을 붙입니다.
- 활용 상황: 문서나 코드를 인용할 때
- 얻는 결과: 줄 단위로 정확히 지칭할 수 있습니다.
- 제한 사항: 원본 파일은 변경되지 않습니다.
빈 줄 제어
-b a 또는 -b t로 모든 줄/비어 있지 않은 줄을 선택합니다.
- 활용 상황: 빈 줄이 많은 파일을 정리해 볼 때
- 얻는 결과: 번호가 끊기지 않아 읽기 편합니다.
- 제한 사항: 기본값은 비어 있지 않은 줄만 번호를 매깁니다.
형식 조정
-w와 -s로 폭과 구분자를 바꿉니다.
- 활용 상황: 출력 형식을 고정할 때
- 얻는 결과: 정렬된 결과를 얻을 수 있습니다.
- 제한 사항: 옵션이 많아 처음에는 복잡하게 느껴질 수 있습니다.
설치 및 실행
설치 여부 확인
nl --version
sudo apt install coreutils # Debian/Ubuntu sudo dnf install coreutils # Fedora
실제 사용 예제
기본 번호
비어 있지 않은 줄에 번호를 붙입니다.
nl config.yml | head
모든 줄 번호
빈 줄까지 번호를 매깁니다.
nl -b a notes.txt | head
형식 지정
폭과 구분자를 바꿉니다.
nl -w 3 -s ': ' app.py | sed -n '1,10p'