【问题标题】:How to get the percentage of apt get output through regex?如何通过正则表达式获取 apt 输出的百分比?
【发布时间】:2017-12-10 13:30:51
【问题描述】:

有人可以帮我用一个正则表达式来通过正则表达式从下面的 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%..

谢谢。

【问题讨论】:

    标签: regex bash apt-get apt


    【解决方案1】:

    使用grep-p

    grep -oP '^\d+%\s'
    

    【讨论】:

      【解决方案2】:
       awk '$1 ~ /[[:digit:]]{1,3}%/ { print $1 }'
      

      检查行模式的第一个分隔部分是否匹配 1-3 位数字,后跟一个 %。如果是,请打印第一张。

      【讨论】:

        【解决方案3】:

        使用这个:

        ^\d{1,3}%
        

        ^ - 行首
        \d{1,3} - 一位、两位或三位数字
        % - 百分号

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

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

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

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

        【讨论】:

        • @PS。我确实赞成它表明投票已记录但不会显示给声望低于 15 的人..
        猜你喜欢
        • 1970-01-01
        • 2012-12-08
        • 2012-01-20
        • 2011-11-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多