k96*_*961 9 sed text-processing
我有一个包含电子邮件列表的文件,每一行都有一个电子邮件。我想删除包含字符串example.com或test.com.
我试过这个:
sed -i 's/example\.com//ig' file.txt
Run Code Online (Sandbox Code Playgroud)
但它只会删除字符串example.com,如何删除整行?
Wal*_*her 21
使用 GNU sed:
sed '/example\.com/d;/test\.com/d' -i file.txt
Run Code Online (Sandbox Code Playgroud)
将删除带有example.com和的行test.com。
来自man sed:
d Delete pattern space. Start next cycle.
Run Code Online (Sandbox Code Playgroud)
POSIXly,您可以使用grep:
grep -Eiv '(example|test)\.com' <in >out
Run Code Online (Sandbox Code Playgroud)