为了账号安全,请及时绑定邮箱和手机立即绑定

cat student.txt |grep -v "name" | awk '$4>=70{printf $2 "\n"}'

bash中默认的不都是字符串形式么?为什么$4>=70可以进行比较啊?

正在回答

4 回答

这个应该是awk决定的吧,把它以参数的形式记录;bash是默认而已,那个之前有节课编写简单加法计算器时不就用了参数$1,$2来运算的么。

0 回复 有任何疑惑可以回复我~

那个$4那个应该是调用参数,但是调用过来应该是字符串啊,字符串怎么比较大小啊?这里的字符串比较大小肯定不是我们希望的,这里肯定是数字比较大小啊

0 回复 有任何疑惑可以回复我~

在bash中的变量默认是字符串类型

但是$4表示的是第4位字符,不是表示一个变量

0 回复 有任何疑惑可以回复我~

我想如果把70也作为字符串比较的话,也是可以的

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

cat student.txt |grep -v "name" | awk '$4>=70{printf $2 "\n"}'

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信