shell(linux)提取指定字符怎么提取?比如下面截图是文件里的一部分,我想提取出8088
文件里有两个Connector节点,不同的是8088对应的protocol是HTTP,另外文件里也有多个port=XXX,请问怎么提取8088,求大神~~~...
文件里有两个Connector节点,不同的是8088对应的protocol是HTTP,另外文件里也有多个port=XXX,请问怎么提取8088,求大神~~~
展开
1个回答
展开全部
假设配置在config.ini
方法为:
cat config.ini | perl -0777 -pe 's/\n//g' | sed 's#/>#/>\n#g' | grep tomcatThreadPool | sed 's/.*port="\([^"]*\)".*/\1/'
更多追问追答
追问
已解决,因为AJP端口基本都是8009,所以用了下面的方法,不过还是谢谢~~~
cat config.ini|grep -A10 "<Connector" |grep "port=" |grep -v "8009"|awk -F "\"" '{print $2}'
追答
如果知道另外一个端口值,还不如直接
grep "port=" config.ini | grep -v 8009 | awk -F "\"" '{print $2}'
加那个A10已经没有必要了,另外基本都是8009还是不太准确
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询