linux shell提取字符串,awk? grep? sed?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux shell提取字符串,awk? grep? sed?相关的知识,希望对你有一定的参考价值。

假如文件中有一行的格式如下:
(...) count=10 (...)
其中count是固定的,10是可变的,(...)表示其它随意的字符串
我想通过"count="这个前缀获取"10"这个需要的字符串
同样的还有:latency: 10.0ms,通过latency:这个前缀获取10.0ms
大家有没有什么办法
想到一个长长的解决办法
egrep -o 'count=[0-9]+' filename | awk -F '=' 'print $2'
egrep -o 'latency: .*ms' filename | awk -F ':' 'print $2',第二个如果需要去除ms的话,还需要再串一个awk
好麻烦啊

使用零宽断言,grep 需要支持-P 参数。
grep -Po \'(?<=count=)[0-9]+\' filename
参考技术A 请截图!!追问

= =!!
这个还需要截什么图?

shell字符串截取

参考技术A

grep 在文件中提取行,cut awk sed 提取列

输出格式

awk \'条件一动作一 条件2动作二 ...\' 文件名
条件 一般使用关系表达式作为条件 x>10
动作 格式化输出,流程控制语句

print 不需要加换行符

df -h 查看系统容量使用情况
grep 截取行
awk 提取
cut 截取

手动指定分隔符,要加入begin

sed 是一种几乎包括在所有unix平台的轻量流编辑器。sed主要是用来将数据进行选取,替换,删除和新增的命令。

动作

删除2,3行

接收管道符

sort [选项] 文件名

sort /etc/passwd
sort -r /etc/passwd

按数值排序

wc [选项] 文件名

以上是关于linux shell提取字符串,awk? grep? sed?的主要内容,如果未能解决你的问题,请参考以下文章

使用 shell 脚本监控 Linux 主机

[Linux Shell学习系列十四]sed和awk-5.awk基础

各位大侠: linux shell处理:有一文本,如何提取第4列相同的行。 谢谢了

Linux Shell常用技巧 awk编程

Linux提取不匹配字符串的行和列(awk函数)

Linux Shell学习--awk命令详解