viv*_*vas 3 linux bash awk sed
我有一个文件,每行有一个单词/字符.例:
a
abandonado
esta
estabelecimento
o
onibus
c
casa
police
Run Code Online (Sandbox Code Playgroud)
我需要删除具有特定模式的行(例如模式"esta").我试着用awk
cat file | awk '!/^esta/'
Run Code Online (Sandbox Code Playgroud)
但这种解决方案中删除与该模式的所有行"esta"和"estabelecimento"太.我只需要删除具有特定模式的"esta"行不符合"estabelecimento".
带有图案"o"和线条的线条也会出现同样的问题"a".该命令将删除所有以此模式开头的行.
简单使用grep:
grep -v -w esta file
Run Code Online (Sandbox Code Playgroud)
-w 选项匹配"仅限单词"/"确切单词":正是您需要的-v 选项反转匹配:仅打印不匹配的行