如何通过正则表达式获取 apt 获取输出的百分比?



有人可以帮我使用正则表达式通过正则表达式从下面的 bash 输出中获取百分比吗?

Get:11 http://us.archive.ubuntu.com/ubuntu xenial-updates/universe amd64 libvlc$
Get:12 http://us.archive.ubuntu.com/ubuntu xenial/main amd64 fonts-freefont-ttf$
40% [12 fonts-freefont-ttf 855 kB/4,140 kB 21%]

我只需要从上面的例子中得到 40%。

谢谢。

awk '$1 ~ /[[:digit:]]{1,3}%/ { print $1 }'

检查线型的第一个分隔部分是否与 1-3 位数字匹配,后跟 %。如果是,请打印第一条。

使用这个:

^d{1,3}%

^- 行
d{1,3}- 一位、两位或三位数字
%- 感知符号

演示:regex101.com/r/tuyAbD/1

如果你只想有数字(没有%(,请使用这个:

^d{1,3}(?=%)

演示:regex101.com/r/tuyAbD/2

使用grep-p

grep -oP '^d+%s'

最新更新