如何使用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游戏"来自以这种方式结束的所有行的字符串。
我超级生锈,这看起来很容易,但我无法弄清楚。
答案 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$//'
。