这个命令的含义把UID大于1000小于100的用户ID打印出来,可是执行之后,没有任何结果输入
[root@centos ~]#cat /etc/passwd | awk -F ":" '$3>1000 && $3<100{print $3}'
然后我把&&换成||就可以得到结果
[root@centos ~]#cat /etc/passwd | awk -F ":" '$3>1000 ||$3<100{print $3}'
0
1
2
3
4
5
6
7
8
11
12
14
99
81
59
74
89
72
38
1001
1002
1005
1006
1007
1009
1010
1011
1111
[root@centos ~]#
虽然用||得到了我想要的结果,可是这与我理解的&& 并且 ||或者的含义不对呀?很疑惑呀
随后我有测试了一下:
用&&并且 打印小于100,大于50之内ID
[root@centos ~]#cat /etc/passwd | awk -F ":" '$3>50 && $3<100{print $3}'
99
81
59
74
89
72
这次输出的结果,与我想要的结果是相同的。
我现在是在搞不懂&& || 为什么同样的命令,同样的文件,只是大于1000或大于50,命令结果就不同了