我怎样才能使它更好/更有效:
df -h | grep /partition | awk '{print $3}' | awk '{$0=substr($0,1,length($0)-1); print $0}'
这将打印 /partition 的大小(删除最后一个字符)。
您可以再次使用sed
而不是awk
:
df -h | grep "/partition" | awk '{print $3}' | sed -e 's,[A-Z]$,,'
请记住,这(和您的单行)不会打印分区的大小,而是使用的大小。
另一种变体,告诉df
进行过滤,并使用awk
sgensub()
代替:
df -h /partition | awk 'NR > 1 { print gensub("G$", "", "", $3) }'
一根管子就够了:
df -h | awk 'NR > 1 && /partition/ {print substr($3,1,length($3)-1)}'