Shell测试语句-与或非

系统运维

[root@master1-192-168-117-18 ~]# [ -d /etc/dev ] 测试语句两边应该有一个空格
[root@master1-192-168-117-18 ~]# echo $?
1

十余年的诏安网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整诏安建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联从事“诏安网站设计”,“诏安网站推广”以来,每个客户项目都认真落实执行。

[root@master1-192-168-117-18 ~]# [ -e /etc/profile ]
[root@master1-192-168-117-18 ~]# echo $?
0

[root@master1-192-168-117-18 ~]# [ -e /etc/profile ] && echo "I love you"
I love you

除了逻辑“与”外,还有逻辑“或”,它在Linux系统中的运算符号为||,表示当前面的命令执行失败后才会执行它后面的命令,因此可以用来结合系统环境变量USER来判断当前登录的用户是否为非管理员身份:
            [xiha@master1-192-168-117-18 ~]$ [ $USER = root ] || echo No\'s root

No\'s root

第三种逻辑语句是“非”,在Linux系统中的运算符号是一个叹号(!),它表示把条件测试中的判断结果取相反值。也就是说,如果原本测试的结果是正确的,则将其变成错误的;原本测试错误的结果则将其变成正确的

[root@master1-192-168-117-18 ~]# [ $USER != root ] || echo "no\'s root"
no\'s root

先判断当前登录用户的USER变量名称是否等于root,然后用逻辑运算符“非”进行取反操作,效果就变成了判断当前登录的用户是否为非管理员用户了。最后若条件成立则会根据逻辑“与”运算符输出user字样;或条件不满足则会通过逻辑“或”运算符输出root字样,而如果前面的&&不成立才会执行后面的||符号。

[root@master1-192-168-117-18 ~]# [ $USER != root ] && echo "user" || echo "root"
root

文章题目:Shell测试语句-与或非
链接分享:https://www.cdcxhl.com/article34/cpiise.html

成都网站建设公司_创新互联,为您提供网站改版软件开发静态网站响应式网站网站排名移动网站建设

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站优化排名