awk + ​​如何在 awk 中执行 OR

awk + ​​如何在 awk 中执行 OR

通过以下命令我从 df 捕获可用大小

echo "$DF" | awk '$NF == "/var" { print $(NF-2) }' 

如果我想设置如何设置语法

NF == "/var"

或者

NF == "/"

因为我还想捕获 /var 附加的“/”(有时 /var 在 / 下)

我试过:

 echo "$DF" | awk '$NF == "/var|/" { print $(NF-2) }'

但不工作。

答案1

你可以这样做:

echo "$DF" | awk '$NF == "/var" || $NF == "/" { print $(NF-2) }'

或者,如果您想使用正则表达式,请使用~正则表达式匹配运算符:

echo "$DF" | awk '$NF ~ "^(/var|/)$" { print $(NF-2) }'

或者:

echo "$DF" | awk '$NF ~ "^/(var)?$" { print $(NF-2) }'

相关内容