shell(linux)提取指定字符怎么提取?比如下面截图是文件里的一部分,我想提取出8088

文件里有两个Connector节点,不同的是8088对应的protocol是HTTP,另外文件里也有多个port=XXX,请问怎么提取8088,求大神~~~... 文件里有两个Connector节点,不同的是8088对应的protocol是HTTP,另外文件里也有多个port=XXX,请问怎么提取8088,求大神~~~ 展开
 我来答
qmg1023
2016-07-01 · TA获得超过888个赞
知道小有建树答主
回答量:804
采纳率:0%
帮助的人:896万
展开全部

假设配置在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还是不太准确
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式