好,我有一个文本文件,格式是这样的,它有几行。
EXAMPLE1:EXAMPLE2:EXAMPLE3
EXAMPLE1:EXAMPLE2:EXAMPLE3
EXAMPLE1:EXAMPLE2:EXAMPLE3
我想使用 grep 将其更改为如下所示
EXAMPLE2:EXAMPLE3
基本上我想在以下之前取出第一部分:
如果有人能告诉我如何做到这一点,我将不胜感激。
您可以使用< code>cut实用程序过滤掉给定分隔符的列。
在此示例中,分隔符为 :,并且您希望每一列都以第二个开头:
$ cut -d: -f2- < input.txt
您可以使用-o
标志来选择输入中与grep
中的正则表达式匹配的部分。
实例
$ grep -o "[^:]*:[^:]*$" input
EXAMPLE2:EXAMPLE3
EXAMPLE2:EXAMPLE3
EXAMPLE2:EXAMPLE3
另一种方法。希望这有所帮助。
awk -F":" '{printf "%s:%s\n" ,$1,$2}' file.txt
输出
EXAMPLE1:EXAMPLE2
EXAMPLE1:EXAMPLE2
EXAMPLE1:EXAMPLE2