可能的重复:
我特别想从文本文件中删除 grep 输出字符串
我对 Linux 有点陌生,但我遇到了一个问题。我有一个名为file_a.txt
“我的第一个命令”的文本文件
grep -A 12 ".production =" file_a.txt
输出是几个块。每个字符串块包含 13 行
grep
我特别想删除使用原始文件中的命令获得的所有字符串块,file_a.txt
我不想将 grep 输出发送到新文件。我也不想使用,grep -v
因为它在我的情况下不起作用。
我尝试过类似的事情,但没有任何效果:
cut < grep -A 12 ".production =" file_a.txt
sed -i '/grep -A 12 ".production ="/d' file_a.txt
答案1
我想你正在寻找这个:
sed -i '/.production =/,+12d' file_a.txt
当 sed 找到你的模式时,它会“删除”12 行
(警告,修改file_a.txt到位)
答案2
sed -i '/\.production =/,+12d' file_a.txt
会做这份工作