728x90
반응형
개요
쉘에서 파일에서 특정 문자열이 포함된 줄 번호를 출력하는 방법을 알아 보겠습니다.
시험환경
- OS : Ubuntu 20.04 LTS x86_64
- 예제 파일
Here are some examples of running GNU Hello.
This is the output of the command 'hello':
Hello, world!
This is the output of the command 'hello --traditional':
hello, world
This is the output of the command 'hello --greeting=hi':
hi
grep
가장 손쉬운 방법으로 "grep" 명령의 "-n" 옵션을 이용하는 방법입니다. 사용법은 다음과 같습니다.
$ grep -n "traditional" test.txt
7: This is the output of the command 'hello --traditional':
"traditional" 문자열 패턴이 포함된 줄의 번호와 함께 포함된 줄의 전체 내용까지 출력해 줍니다.
여러 곳에 포함되어 있다면 포함된 모든 줄이 출력됩니다.
$ grep -n "hello" test.txt
3: This is the output of the command 'hello':
7: This is the output of the command 'hello --traditional':
9: hello, world
11: This is the output of the command 'hello --greeting=hi':
sed
커맨드 라인 편집기로 유용한 "sed"를 이용해도 특정 문자열 패턴이 포함된 줄들의 번호를 출력할 수 있습니다.
$ sed -n "/traditional/=" ./test.txt
7
$ sed -n "/hello/=" ./test.txt
3
7
9
11
결론
특정 파일에서 패턴 문자열을 조회하여 그 결과에 따라 내용을 추가하거나 편집 등의 작업을 수행하는데 유용하게 이용할 수 있습니다.
'Linux,Unix,BSD' 카테고리의 다른 글
[script] Let's Encrypt SSL 인증서 갱신 스크립트 (0) | 2022.01.25 |
---|---|
[linux] USB 점검을 위한 세부 정보 얻기 (0) | 2022.01.11 |
git push error - sha1 file '<stdout>' write error: Broken pipe (0) | 2021.10.05 |
git push가 안되는 증상 : "fatal: Could not read from remote repository." (0) | 2021.09.27 |
[linux] 시스템 재부팅 및 동작시간 확인하기 (0) | 2021.09.24 |