有人可以帮助我使用正则表达式从下面的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%..
感谢。
答案 0 :(得分:2)
awk '$1 ~ /[[:digit:]]{1,3}%/ { print $1 }'
检查线条图案的第一个分隔部分是否匹配1-3个数字后跟%。如果是,请打印第一件。
答案 1 :(得分:1)
使用这个:
^\d{1,3}%
^
- 行的开头
\d{1,3}
- 一,二或三位数字
%
- percenatage sign
如果你想要只有号码(没有%
),请使用这个:
^\d{1,3}(?=%)
答案 2 :(得分:1)
使用grep
和-p
:
grep -oP '^\d+%\s'