$
예를 들어 다음 문자가 포함된 줄 을 삭제하고 싶습니다 .
a$df
aheh$b$
t$$a
나는 그것을 유지하고 싶다하나 $
, 줄 끝에서:
abc$
abcdwh$
텍스트 파일에는 2M 줄이 포함되어 있습니다.
답변1
$
의 메타문자는 sed
두 가지 방법으로 문자 그대로 일치됩니다.
- 백슬래시
\$
하거나 - 대괄호로 묶으세요.
[$]
그러나 또 다른 방법이 있습니다. $
정규식의 마지막 문자가 아닌 경우 리터럴로 처리하는 것입니다. 그래서 다음
sed -e '/$./d' file
귀하의 문제에 맞춰져 있습니다.
답변2
$
줄 뒤에 내용이 있으면( .
) 해당 줄을 삭제합니다.
sed '/\$./d' file
이 모드는 다음에서도 작동합니다 grep
.
grep -v '\$.' file