我想写一个bash并将一些变量传递给它。
awk -v $3=lengthA -v $4=lengthB 'NF<=lengthA/lengthB' - >
但它会返回此错误
awk:致命:“50”不是合法的变量名称
答案 0 :(得分:2)
参数-v
需要name=value
。所以你需要写-v lengthA=$3
答案 1 :(得分:2)
如果$3
来自shell,那么
awk -v var=$3 'NF<=var' file
如果您想使用shell变量,那么
lengthA=3
awk -v var="$lengthA" 'NF<=var' file
或
awk 'NF<=var' var="$lengthA" file
PS总是使用双引号和变量。