sed
주소 및 주소 범위
수색…
소개
Sed 명령은 주소 또는 주소 범위를 사용하여 특정 행에서만 작동하도록 지정할 수 있습니다.
특정 라인
$ cat ip.txt
address
range
substitution
pattern
sample
N 번째 라인
$ sed -n '2p' ip.txt range $ sed '3d' ip.txt address range pattern sample
마지막 줄
$ sed -n '$p' ip.txt sample
특정 라인 범위
$ cat ip.txt
address
range
substitution
pattern
sample
지정된 범위는 해당 줄 번호를 포함합니다.
$ sed -n '2,4p' ip.txt range substitution pattern
$
는 마지막 행을 지정하는 데 사용될 수 있습니다. 명확성을 위해 주소와 명령 사이에 공간을 사용할 수 있습니다.$ sed -n '3,$ s/[aeiou]//gp' ip.txt sbstttn pttrn smpl
GNU sed
i 번째 라인부터 i + j 번째 라인까지
$ sed '2,+2d' ip.txt address sample
i 라인 및 i + j , i + 2j , i + 3j 등
$ sed -n '1~2p' ip.txt address substitution sample
정규 표현식 패턴과 일치하는 행
$ cat ip.txt
address
range
substitution
pattern
sample
Add Sub Mul Div
패턴과 일치하는 선
$ sed '/add/d' ip.txt range substitution pattern sample Add Sub Mul Div $ sed -n '/t/p' ip.txt substitution pattern $ sed -n '/[A-Z]/ s| |/|gp' ip.txt Add/Sub/Mul/Div
패턴 범위
$ sed -n '/add/,/sub/p' ip.txt address range substitution $ sed -n '/a/,/e/p' ip.txt address range pattern sample
노트
- 두 번째 예에서는 두 개의 범위 - 행
1,2
및 행4,5
와 일치했습니다. - 패턴을 지정하려면
/
대신 다른 문자를 사용하는 방법에 대해 다른 구분 기호 사용을 참조하십시오.
GNU sed
대소 문자를 구분하지 않는 일치
$ sed -n '/add/Ip' ip.txt address Add Sub Mul Div $ sed -n '/add/I,/sub/p' ip.txt address range substitution Add Sub Mul Div
숫자와 패턴을 사용하여 범위 지정하기
$ cat ip.txt
address
range
substitution
pattern
sample
Add Sub Mul Div
줄 번호와 줄 일치 패턴
$ sed -n '2,/pat/p' ip.txt range substitution pattern
행 일치 패턴과 행 번호 비교
$ sed '/pat/,$d' ip.txt address range substitution
GNU sed
줄 맞춤 패턴과 그 뒤의 줄 수
$ sed -n '/add/I,+1p' ip.txt address range Add Sub Mul Div
0
은 패턴이 입력의 첫 번째 라인과 일치 할 때 범위의 끝을 알리는 시작 라인 번호로 사용할 수 있습니다.$ sed -n '0,/r/p' ip.txt address $ sed -n '1,/r/p' ip.txt address range $ sed -n '0,/u/p' ip.txt address range substitution
주소 범위 무시
$ cat ip.txt
address
range
substitution
1234
search pattern
sample
Add Sub Mul Div
지정된 주소 이외의 행 삭제
$ sed '/[0-9]/!d' ip.txt 1234 $ sed -n '/[0-9]/p' ip.txt 1234 $ sed '$!d' ip.txt Add Sub Mul Div $ sed -n '$p' ip.txt Add Sub Mul Div
패턴과 일치하지 않는 행을 검색하고 바꿉니다.
$ sed '/ /! s/^/#/' ip.txt #address #range #substitution #1234 search pattern #sample Add Sub Mul Div $ sed '/add/,/sub/! s/[aeiou]//gi' ip.txt address range substitution 1234 srch pttrn smpl dd Sb Ml Dv
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow