如何使用shell脚本中的sed从文件的每一行删除单词?

时间:2017-04-10 17:32:23

标签: linux bash shell

例如我想删除每行的第二个和第四个单词

在sample.txt之前:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
Nulla elit dui, fermentum sed quam sed, semper auctor elit.

在sample.txt之后:

Lorem dolor amet, consectetur adipiscing elit.
Nulla dui, sed quam sed, semper auctor elit.

2 个答案:

答案 0 :(得分:1)

类似的东西:

sed 's/\(\S\+\s\+\)\S\+\s\+\(\S\+\s\+\)\S\+\s\+\(.*\)/\1\2\3/g'
如果你必须使用sed,

应该有用。如果行中少于4个单词,则此脚本不起作用。

答案 1 :(得分:0)

你可以用“剪切”

来做到这一点
cut -d ' ' -f1,3,5- MY_FILE

-d将分隔符设置为空格,-f选择字段1,3和5 +。