使用grep

时间:2016-06-11 06:47:32

标签: linux grep

好的,所以我有一个像这样格式化的文本文件,它有几行。

EXAMPLE1:EXAMPLE2:EXAMPLE3
EXAMPLE1:EXAMPLE2:EXAMPLE3
EXAMPLE1:EXAMPLE2:EXAMPLE3

我想用grep将其改为看起来像这样

EXAMPLE2:EXAMPLE3

基本上我想在第一部分之前拿出:

如果有人可以告诉我该怎么做,我们将不胜感激。

4 个答案:

答案 0 :(得分:2)

您可以使用cut实用程序过滤出给定分隔符的列。

在此示例中,分隔符为:,您希望每列都以第二列开头:

$ cut -d: -f2- < input.txt

答案 1 :(得分:1)

您可以使用-o标记选择与grep中的正则表达式匹配的输入部分。

示例

$ grep -o "[^:]*:[^:]*$" input
EXAMPLE2:EXAMPLE3
EXAMPLE2:EXAMPLE3
EXAMPLE2:EXAMPLE3

答案 2 :(得分:0)

另一种方法。希望这会有所帮助。

awk -F":" '{printf "%s:%s\n" ,$1,$2}' file.txt

输出

EXAMPLE1:EXAMPLE2
EXAMPLE1:EXAMPLE2
EXAMPLE1:EXAMPLE2

答案 3 :(得分:-1)

这是:

cut -d':' -f2,3 filename

输出:

EXAMPLE2:EXAMPLE3
EXAMPLE2:EXAMPLE3
EXAMPLE2:EXAMPLE3