好的,所以我有一个像这样格式化的文本文件,它有几行。
EXAMPLE1:EXAMPLE2:EXAMPLE3
EXAMPLE1:EXAMPLE2:EXAMPLE3
EXAMPLE1:EXAMPLE2:EXAMPLE3
我想用grep将其改为看起来像这样
EXAMPLE2:EXAMPLE3
基本上我想在第一部分之前拿出:
如果有人可以告诉我该怎么做,我们将不胜感激。
答案 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