sed
^
$
예를 들어 다음을 사용할 때 패턴 공간에 개행 문자가 포함되어 있는 경우질소주문하다?
여전히 패턴 공간의 시작과 끝과 일치해야 합니까, 아니면 여러 줄이 포함된 줄의 시작과 끝과 일치해야 합니까?
GNU sed
의 ^
합은 $
여전히 전체 패턴 공간의 시작과 끝과만 일치합니다.
답변1
^
그리고$
갈아 바수다항상 시작과 끝이 일치합니다.철사, 설명한대로여기.
어떤 sed
용도로든갈아 바수다똑같이 할 것입니다. 명령을 사용 N
하는 경우 sed
여러 줄이 패턴 공간에서 하나의 긴 줄로 처리되며 각 줄은진짜\n
포함된 줄바꿈(리터럴 및 )으로 \
구분된 줄입니다 n
.
확인하다:
printf '1\n2\n' | sed '1N;/2$/d'
아무것도 출력되지 않습니다. 그리고:
printf '1\n2\n' | sed '1N;/1$/d'
당신을 위한:
1
2
또는 l
더 자세한 정보를 얻으려면 ook 명령을 사용하십시오.
$ printf '1\n2\n' | sed 1N\;l
1\n2$
1
2
$ printf '1\n2\n' | sed 1N\;l | od -t a
0000000 1 \ n 2 $ nl 1 nl 2 nl
0000012