查找一个字符串并预先提取字母以找到找到的字符串,直到另一个指定的字符串
参考下一行,我想找到字符串“ Task”,并在前面打印字母,直到下一个立即(,)逗号为止。在这种情况下为“ 192”
60132>, Exclusive Execution, 192 Task(s), Requested Resour
我尝试了以下给定的方法,但是它不适合我,因为有时“任务”字符串会随机更改其在行中的位置。
| awk -F ',' '{ print $2}' | grep -o '[0-9]\+'
由于这是在一行上的简单替换,因此创建了一个作业sed来执行以下操作:
$ sed -r 's/.*,[[:space:]]*([^,[:space:]]+)[[:space:]]*Task.*/\1/' file
192
您可以使用gensub()在GNU awk中执行相同的操作,也可以使用match()+ substr()和/或[g] sub()s在任何awk中执行相同的操作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句