在Linux命令行中,你可以使用grep命令和正则表达式来过滤出upload括号里面的K或者M。

以下是一个示例命令:

echo 'SNMPv2-SMI::enterprises.35047.2.11.6.0 = STRING: "eth0: upload(12.3KB/s),download(12KB/s)"' | grep -oP 'upload\(\K\d+(\.\d+)?[KM]'

解释一下这个命令:

  • echo 'SNMPv2-SMI::enterprises.35047.2.11.6.0 = STRING: "eth0: upload(12.3KB/s),download(12KB/s)"':这个部分是你的原始字符串,可以替换成你自己的字符串。
  • grep -oP 'upload\(\K\d+(\.\d+)?[KM]':这个部分使用grep命令以及正则表达式来过滤字符串。
    • -o选项表示只输出匹配到的部分。
    • -P选项表示使用Perl兼容的正则表达式。
    • 'upload\(\K\d+(\.\d+)?[KM]'是正则表达式部分。解释一下正则表达式:
      • upload\(:表示匹配到字符串"upload("。
      • \K:表示忽略前面匹配到的部分,即只输出后面的部分。
      • \d+(\.\d+)?:表示匹配到一个或多个数字,可以有小数点和小数部分(可选)。
      • [KM]:表示匹配到K或者M。

运行这个命令后,输出结果将是12.3K

linux命令行中如何把这行SNMPv2-SMIenterprises3504721160 = STRING eth0 upload123KBsdownload12KBs过滤出upload括号里面的K或者M

原文地址: https://www.cveoy.top/t/topic/ivDh 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录