linux 字符串提取字符串,从linux中的文件中提取字符串下的字符串
这个网站过去帮了我很多,但现在才注册,因为我找不到现在正在尝试的确切答案.我希望你能帮忙.
我正在尝试提取或剪切文件中字符串下的值.我的文件看起来像:
Xmqqstab v1.0 - Developed by Oliver Fisse (ISSW)
****
**** Tuesday, April 26, 2016 10:49:21 AM BST ****
****
UNIX
Report for queue(s): 'Q1' on queue manager 'QMGR'...
CQD PQF MxQD OIC OUC UNC LGETDATE LGETTIME LPUTDATE LPUTTIME QOM G P Local Queue Name
----------------------------------------------------------------------------------------------------------------------------------------------------
5 0.10% 5000 0 0 0 2016-04-26 10.48.46 2016-04-26 10.49.01 26s E E - Q1
1 queue(s) matching.
该文件实际上提供了MQ队列统计信息,并且我试图获取值,CQD = 5(这可以是任何数字编号),LGETTIME = 10.48.46.
我可以使用以下值获取值:grep -A3’CQD’file.txt | sed -n’3p’.从行我将不得不按列切割值,但我认为这样做不准确,因为数字可能会变化为5,在这种情况下可能是一个四位数字,在这种情况下列数会改变.
我希望我能清楚这个问题.
非常感谢任何帮助.
谢谢.
最简单的解决方案是用您选择的分隔符替换您的多个空格,然后切割将可靠地工作,就像您首先计划的那样:
grep -A3 'CQD' file.txt | sed -n '3p' | sed 's/ */_/g' | cut -f2 -d'_'
这是用下划线替换多个空格的部分:
sed 's/ */_/g'
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
