Awk bash脚本中文件的额外值

Awk bash脚本中文件的额外值,awk,sed,Awk,Sed,我在示例文件“haproxy monitoring.conf”中有此文件内容 您能否帮助我,如何在bash脚本中从文件haproxy-monitoring.conf中提取端口号'31330'。withsed $ sed -rn '/servers/s/.*:([0-9]+).*/\1/p' file 或者类似地使用awk $ awk '/servers/{print gensub(/.*:([0-9]+).*/,"\\1",1)}' file 或者类似的 grep -Eo '[0-9]+'

我在示例文件“haproxy monitoring.conf”中有此文件内容

您能否帮助我,如何在bash脚本中从文件haproxy-monitoring.conf中提取端口号'31330'。

with
sed

$ sed -rn '/servers/s/.*:([0-9]+).*/\1/p' file
或者类似地使用
awk

$ awk '/servers/{print gensub(/.*:([0-9]+).*/,"\\1",1)}' file
或者类似的

grep -Eo '[0-9]+' file

陈述输出应该是什么而不解释为什么应该是什么的问题会让你接受各种与你真正想做的事情无关的答案。idk如果这是你想要的还是不想要的,因为你没有告诉我们:

$ tr -cd '0-9' < file
31330
$tr-cd“0-9”文件
31330
grep -Eo '[0-9]+' file
$ tr -cd '0-9' < file
31330