我看到很多关于如何使用sed,awk或gawk进行搜索和替换等操作的示例和手册页.
但在我的情况下,我有一个正则表达式,我想对文本文件运行以提取特定的值.我不想做搜索和替换.这是从bash调用的.我们来举个例子:
正则表达式示例:
.*abc([0-9]+)xyz.*
Run Code Online (Sandbox Code Playgroud)
示例输入文件:
a
b
c
abc12345xyz
a
b
c
Run Code Online (Sandbox Code Playgroud)
听起来很简单,我无法弄清楚如何正确调用sed/awk/gawk.我希望做的是,在我的bash脚本中有:
myvalue=$( sed <...something...> input.txt )
Run Code Online (Sandbox Code Playgroud)
我尝试过的事情包括:
sed -e 's/.*([0-9]).*/\\1/g' example.txt # extracts the entire input file
sed -n 's/.*([0-9]).*/\\1/g' example.txt # extracts nothing
Run Code Online (Sandbox Code Playgroud) 我想使用grep -o,但在git bash中没有-o选择.有没有办法grep在git bash中完全工作,就像它在linux bash shell中一样?