bash script
[bash: sed] 특정 행부터 파일 마지막까지 출력하기
반달가면
2023. 9. 15. 17:43
반달가면 이글루에서 백업 - http://bahndal.egloos.com/622584
우선, sed 명령으로 파일의 특정 범위를 출력하는 기본적인 방법은 이전 게시물을 참고하자. 여기로
# my_file.txt 파일의 12번째 행만 출력
sed -n 12p my_file.txt
# my_file.txt 파일의 3번째 행부터 12번째 행까지 출력
sed -n 3,12p my_file.txt
예를 들어, my_file.txt 파일이 총 몇개의 행으로 이루어져 있는지 확인하지 않고 어쨌든 3번째 행부터 마지막까지 출력하려면 아래와 같이 할 수 있다.
# my_file.txt 파일의 3번째 행부터 마지막 행까지 출력
sed -n "3,\$p" my_file.txt
마지막 행을 지칭하는 기호가 "$"인데, 셸(shell)에서 변수를 지칭하는 것으로 해석되지 않도록 역슬래시(\)를 붙여야 함에 유의.
행번호가 아니라 특정 문자열이 처음 출현하는 행부터 마지막까지 출력하는 경우는 아래의 예시를 참고하자. my_file.txt 파일에서 문자열 "abc"가 처음 나오는 행부터 마지막 행까지 출력하는 경우다. 문자열로 범위를 지정하는 방법에 대한 좀 더 자세한 내용은 이전 게시물을 참고하자. 여기로
# my_file.txt 파일에서 문자열 abc가 처음 나오는 행부터 마지막 행까지 출력
sed -n "/abc/,\$p" my_file.txt