从文件内部删除模式条目

时间:2015-05-06 09:23:50

标签: linux bash sed

我得到的查询好像文件中存在给定的模式,下一行以相同的模式开始和结束,删除以给定模式开始和结束的行

输入就像:

abcd & abcd
& abcd &
abcd & abcd
& abcd
abcd abcd
& abcd &
abcd & abcd
abcd &
abcd & abcd
& abcd &"

输出为:

abcd & abcd
abcd & abcd
& abcd
abcd abcd
& abcd &
abcd & abcd
abcd &
abcd & abcd

我使用sed命令作为

var=`sed -n "/$1/{n;p}" $2 | grep "^$1" | grep "$1$"`
sed -i "/^$var$/d" $2

但该命令仅删除文件的第一个模式

1 个答案:

答案 0 :(得分:0)

Sed

sed '/^\& abcd \&$/d' YourFile

grep的

grep -v '^& abcd &$' YourFile