为了更清楚,我需要获取已用空间百分比(仅限 VOL(第 7 行)行中不包含其他内容的百分比) 使用 grep 命令*
答案1
使用带有前瞻功能的 grep。它会查找一个或多个后跟 a 的数字,%
然后仅打印该数字。
grep -Po "[0-9]+(?=%)"
-P
:与 Perl 兼容的正则表达式,因此我们可以使用前瞻。-o
:只打印匹配的部分。
$ echo '/dev/sda3 22G 4.1G 17G 20% /vol/store' | grep -Po "[0-9]+(?=%)"
20
答案2
另一种可能性:
echo "/dev/sda3 22G 4.1G 17G 20% /vol/store" | grep -o "[[:digit:]]*%"
20%
没有 % 符号:
echo "/dev/sda3 22G 4.1G 17G 20% /vol/store" | grep -Po "[[:digit:]]*(?=%)"
20