使用 grep 作为命令的输出

使用 grep 作为命令的输出

grep 可能不是我需要的解决方案。我正在尝试从此命令获取 MB/s 信息,dd if=/dev/zero of=tempfile bs=1M count=1024 该命令返回以下信息 1024+0 records in 1024+0 records out xamount bytes(1.1GB) copied, 11.234 s, 30.5 MB/s

我尝试过,dd if=/dev/zero of=tempfile bs=1M count=1024|grep -oP '.....MB/s 但我对 grep 命令相当陌生,我确信我做错了。这也是在centOS上

答案1

MB/s如果你想抓取包含数字和(或)的部分GB/s,你可以使用

dd if=/dev/zero of=tempfile bs=1M count=1024 2>&1 | grep -o '[0-9.]\+ .B/s$'

您需要将 stderr 重定向到 stdout,因为dd将此信息写入 stderr。

答案2

用 awk

dd if=/dev/zero of=tempfile bs=1M count=1024 |awk 'END{print $(NF-1)" "$NF}'

相关内容