我们假设我有一个很长的HTML文件,其中包含字符串" USER_NAME =' FOO BAR'"。我如何使用BASH提取FOO BAR?

时间:2015-11-19 22:42:11

标签: string bash awk grep extract

我有一个很长的html文件,我想提取一个与变量名相关的值。我认为这需要使用grep,awk或sed。

文件中的一个示例:" USER_NAME =' Foo Bar X. 1003.用户自2003年以来。'"单引号是唯一的分隔符。

2 个答案:

答案 0 :(得分:2)

尝试(快速和肮脏)

grep -oP 'USER_NAME=\K\S+' your.html
grep -oP "USER_NAME='\K[^']+" your.html
grep -oP 'USER_NAME="\K[^"]+' your.html

更新

因为您没有提供任何示例数据,请尝试以上3行,希望其中一行适合您。

答案 1 :(得分:0)

假设每个配置都在换行符上,并且=也不能在用户名中...

grep ^USER_NAME your.html | awk -F "=" '{print $2}'

2个步骤:

1)检索文件中以USER_NAME开头的行

2)分开" ="分隔并打印第二个值