使用grep访问文件中的单词

时间:2018-02-07 20:53:11

标签: regex linux shell grep

我有一个conf文件,我使用grep来访问此文件中的数据,但对我来说这不是一个非常有用的方法。

我怎样才能通过搜索词获得主词?

我用:

grep "export:" /etc/VDdatas.conf

打印:

export: HelloWorld

我想:(没有“export:”)

HelloWorld 

我该怎么做?

2 个答案:

答案 0 :(得分:1)

如果您使用的是GNU grep,则可以使用PCRE和lookbehind

grep -P -o '(?<=export:).*' /etc/VDdatas.conf

-o选项意味着只打印与正则表达式匹配的行部分,并使用export:前缀的lookbehind使其不属于匹配。

您还可以使用sedawk

sed 's/export:/s/^export: //' /etc/VDdatas.conf
awk '/export:/ {print $2}' /etc/VDdatas.conf

答案 1 :(得分:0)

我建议你把比赛告诉awk。

grep "export:" /etc/VDdatas.conf | awk -F ' ' '{print $2}'

这将在输出中打印第二个单词(在空格上划分行之后)。