我有一个conf文件,我使用grep
来访问此文件中的数据,但对我来说这不是一个非常有用的方法。
我怎样才能通过搜索词获得主词?
我用:
grep "export:" /etc/VDdatas.conf
打印:
export: HelloWorld
我想:(没有“export:”)
HelloWorld
我该怎么做?
答案 0 :(得分:1)
如果您使用的是GNU grep
,则可以使用PCRE和lookbehind:
grep -P -o '(?<=export:).*' /etc/VDdatas.conf
-o
选项意味着只打印与正则表达式匹配的行部分,并使用export:
前缀的lookbehind使其不属于匹配。
您还可以使用sed
或awk
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}'
这将在输出中打印第二个单词(在空格上划分行之后)。