이 sed 정규 표현식이 일치하지 않는 이유는 무엇입니까?

이 sed 정규 표현식이 일치하지 않는 이유는 무엇입니까?

최근에 공부를 시작했어요 sed. 내가 해냈어

$seq 10 | sed '/[^049]/d'

기대하고 있어요

4 
9
10

출력으로. 하지만 난 얻었어

4
9

이 정규식을 이해하는 데 내가 어디서 실수를 했나요?

답변1

1number 10이므로 [^049]제거됩니다.

답변2

"0", "4" 또는 "9"가 포함된 행을 표시하려면 다음 단계를 따르세요.

seq 10 | sed -n '/[049]/p'

지침-nsed아니요어떤 줄이라도 인쇄하세요. 이 p명령은 sed인쇄 및/regex/

아니면 언제든지 사용할 수 있습니다 grep:-)

seq 10 | grep -E "[049]"

관련 정보