gpt4 book ai didi

shell - 为什么我的 awk 子命令失败?

转载 作者:行者123 更新时间:2023-12-04 22:57:47 24 4
gpt4 key购买 nike

当我跑

df -hl | grep '/dev/disk1' | awk '{sub(/%/, \"\");print $5}'

我收到以下错误:
awk: syntax error at source line 1
context is
{sub(/%/, >>> \ <<< "\");}
awk: illegal statement at source line 1

我似乎找不到有关 awk sub 的任何文档。
df -hl | grep '/dev/disk1'

返回
/dev/disk1                         112Gi   94Gi   18Gi    85% 24672655 4649071   84%   /

据我了解,它应该返回已用磁盘空间的百分比。

它应该从输入返回 85
/dev/disk1                         112Gi   94Gi   18Gi    85% 24699942 4621784   84%   /

最佳答案

这将修复您提供的命令。df -hl | grep '/dev/disk1' | awk '{sub( /%/, ""); print $5 }'无需转义双引号。

当然,您也不需要在这里使用 grep。df -hl | awk '/disk1/ { sub( /%/, "", $5); print $5}'
请注意,您可以提供替换的目标作为 sub 的第三个参数。 .

sub命令在gawk手册on this page.中有描述

关于shell - 为什么我的 awk 子命令失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37504661/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com