我需要删除除1之外的所有模式,但是我无法在Bash脚本中使用它。 我试过了
sed -e 's/ /\\ /g' -e 's/\\ / /1'
和
sed ':a;s/\([^ ]* .*[^\\]\) \(.*\)/\1\\ \2/;ta'
但遗憾的是,它们都没有达到预期的效果。
有人能帮帮我吗? 先感谢您!
答案 0 :(得分:0)
您是否尝试删除重复的空格?
如果这是正确的尝试 sed -e's / + / / g'
使用*的问题是它也匹配0个出现的模式,你必须使用+代替。
最好的问候,格奥尔格
答案 1 :(得分:0)
没有样本输入,我会猜测,也许它会有所帮助:
cat file
header for file
1111
header for file
1111
2222
header for file
3333
4444
5555
awk '/header/&&c++>0 {next} 1' file
header for file
1111
1111
2222
3333
4444
5555
虽然我不是sed
sed '1!{/^header/d;}' file