使用bash删除列表中的重复字符串

时间:2016-06-20 04:14:33

标签: string bash cygwin

如何使用bash删除在列表的大多数行中重复的字符串?

E.G。

我的列表如下所示:

Rex Rocket Steam Game
Magdalena Steam Game
FLASHOUT 2 Steam Game
Falcon
Girls Like Robots Steam Game
The Land Of Lamia Steam Game
Aeon Command

我想删除所有" Steam游戏"来自以这种方式结束的所有行的字符串。

我超级生锈,这看起来很容易,但我无法弄清楚。

1 个答案:

答案 0 :(得分:4)

有很多选项,sed可能是最简单的。

$ sed 's/Steam Game$//' foo.txt        
Rex Rocket 
Magdalena 
FLASHOUT 2 
Falcon
Girls Like Robots 
The Land Of Lamia 
Aeon Command

您要求移除"Steam Game"而不是" Steam Game"。如果您还希望删除空格,请在正则表达式中添加一个空格:'s/ Steam Game$//'。如果有多个空格,请使用's/ *Steam Game$//'