sed命令删除包含指定字符串行的上一行
sed-i-e:a-e'$!N;s/.*\n\("字符串"\)/\1/;ta'-e'P;D'文件名这是网上找的资料,命令执行时不报错。但是,对文件没有任何改动。sed-i...
sed -i -e :a -e '$!N;s/.*\n\("字符串"\)/\1/;ta' -e 'P;D' 文件名
这是网上找的资料,命令执行时不报错。但是,对文件没有任何改动。
sed -i -e :a -e '$!N;s/.*\n\("字符串"\)/\1/;ta' -e 'P;d' 文件名
这是我改动了一下,命令倒是执行了,命令也不报错。但却把指定行的上一行删除之外,也把指定行的下一行也删了,好像还隔行删了更多的行。
命令究竟应该如何写?请测试成功后再回答。
晕,才提出问题,就找到解决的办法了:
sed -i 'N;/\n.*关键字/!P;D' 文件名
求对这条命令的详细解释。 展开
这是网上找的资料,命令执行时不报错。但是,对文件没有任何改动。
sed -i -e :a -e '$!N;s/.*\n\("字符串"\)/\1/;ta' -e 'P;d' 文件名
这是我改动了一下,命令倒是执行了,命令也不报错。但却把指定行的上一行删除之外,也把指定行的下一行也删了,好像还隔行删了更多的行。
命令究竟应该如何写?请测试成功后再回答。
晕,才提出问题,就找到解决的办法了:
sed -i 'N;/\n.*关键字/!P;D' 文件名
求对这条命令的详细解释。 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询