linux脚本 逻辑运算,Linux-shell-逻辑运算和;

7.Shell

7.5.2命令执行的判断依据: ; , &&, ||

1.cmd ; cmd (不考虑指令相关性的连续指令下达)

一般用于多条命令之间没有直接需求联系,最多只是有一个执行先后的关系。

[root@localhost tmp]# sync; shutdown -h now

2.与&&或 ||指令下达情况说明

cmd1 && cmd21.若 cmd1 执行完毕且正确执行($?=0),则开始执行 cmd2。

2.若 cmd1 执行完毕且为错误 ($?≠0),则 cmd2 不执行。

cmd1 || cmd21.若 cmd1 执行完毕且正确执行($?=0),则 cmd2 不执行。

2.若 cmd1 执行完毕且为错误 ($?≠0),则开始执行 cmd2。

[root@localhost tmp]# ls /tmp/abc && touch /tmp/abc/hehe

ls: cannot access /tmp/abc: No such file or directory

[root@localhost tmp]# ls

aaa  stderr  stdout

#测试 /tmp/abc是否存在,若存在则用 touch 建立 /tmp/abc/hehe

[root@localhost tmp]# ls /tmp/abc || mkdir /tmp/abc

ls: cannot access /tmp/abc: No such file or directory

[root@localhost tmp]# ls

aaa  abc  stderr  stdout

#测试 /tmp/abc是否存在,若不存在则予以建立,若存在就不作任何事情

[root@localhost tmp]# ls /tmp/abc || mkdir /tmp/abc && touch /tmp/abc/hehe

[root@localhost tmp]# ls abc/

hehe

#我不清楚 /tmp/abc是否存在,但就是要建立 /tmp/abc/hehe档案

(1)命令返回值#?

$? 是一个特殊变量,用来获取上一个命令的退出状态,或者上一个函数的返回值。所谓退出状态,就是上一个命令执行后的返回结果。退出状态是一个数字,一般情况下,大部分命令执行成功会返回 0,失败返回 非0。

[root@localhost tmp]# ls abc/

hehe

[root@localhost tmp]# echo $?

0

[root@localhost tmp]# ls aaaaa

ls: cannot access aaaaa: No such file or directory

[root@localhost tmp]# echo $?

2

(2)&&与||的执行过程

command1 && command2

&&左边的command1执行成功(返回0表示成功)后,&&右边的command2才能被执行。

command1 || command2

如果||左边的command1执行失败(返回非0表示失败),就执行&&右边的command2,否则command2不会被执行。

#分析ls /tmp/abc || mkdir /tmp/abc && touch /tmp/abc/hehe的执行过程如下:

3a5597cbae5cef9b9870517ba7985d66.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/300259.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

我居然从一只猫身上学到了斐波那契数列

猫的数学这么好是有原因的斐波那契数列(Fibonacci sequence)是由数学家列昂纳多斐波那契定义的把它写成数列的形式是这样的:1,1,2,3,5,8,13,21,34,55,89,...比如:人的耳朵比如:台风比如:松果的底部螺纹从两…

听说过Netflix的Chaos Monkey吗?不用羡慕,我们.NET也有

Chaos Monkey,是Netflix工程师创建的一种故障注入系统,它会随机在生产实例中引发各种各样的故障或异常,以确保它们的系统能够在这样的情况下存活,而不会对客户造成任何影响。可见,Chaos Monkey可以提高系统的安全和可用…

PHP中session与cookie的简单使用

2019独角兽企业重金招聘Python工程师标准>>> cookie简单实例&#xff1a; <?php if($_GET[out]){ //注销cookie setcookie(id,); setcookie(password,); echo "<script>location.hrefcookie.php</script>"; …

NetBeans Weekly News 刊号 # 27 - Sep 24, 2008

刊号 # 27 - Sep 24, 2008 日程表 注册 NetBeans Day--圣保罗&#xff0c;巴西&#xff08;十月一日&#xff09; 欢迎来到巴西圣保罗的 Sun Tech Days 。赶快在十月一日加入我们的 NetBeans Deep Dive 吧&#xff01;注册 NetBeans Day 是免费的&#xff0c;即使您不参加 Sun …

做项目开发你必须得掌握的知识:设计模式

先分享一个小故事 两个年轻人是大学同班同学&#xff0c;毕业后被同一家公司录取&#xff0c;可以说是站在相同的起跑线上。两人对未来也都是信心满满&#xff0c;踌躇满志。其中一人怀抱满腔激情&#xff0c;到处学习热门框架&#xff0c;但受限于公司体量和业务逻辑&#xff…

985硕博士:你为什么比我差?

全世界只有3.14 % 的人关注了青少年数学之旅身边总有些人看上去很轻松&#xff0c;不仅在工作中游刃有余&#xff0c;还知识渊博&#xff0c;对各种事情有自己的思考。这次&#xff0c;我们非常认真地筛选了这些公众号&#xff0c;他们专注于内容&#xff0c;关心当下发生的事情…

ESXI转HYPER-V,问题接二连三啊(VMDK转VHD)

首先说软件&#xff1a; 要不是用SCVMM来转的话&#xff0c;我用得最爽的还是WINIMAGE&#xff0c;自然流畅。其它的都有各种问题。 其次说说配置更改&#xff1a; 如果原ESXI里只有一个硬盘&#xff0c;一切好说&#xff0c;如果里面挂载了两个&#xff0c;甚至三个硬盘&#…

ASP.NET2.0_多语言本地化应用程序

1.设置当前文化 页面类有两个影响本地化的重要属性均在< % Page % >指令设置:1).UICulture 此属性用于指定载入到页面的资源文件,资源文件可以包含页面文本内容的特定语言的翻译版本.其属性值可为中立文化也可为特定文化(下面有介绍&#xff09;2).Culture …

不用“背”单词,一个方法从普通二本到哥伦比亚大学:我是如何做到的?

全世界只有3.14 % 的人关注了青少年数学之旅“学英语太难、太费劲了。”我听过无数人这么说。然而&#xff0c;我的学员们&#xff0c;却都只用了短短3—6个月时间&#xff0c;就以惊人速度提高了英语&#xff1a;小磊&#xff1a;勉强踩着2本线上了大学&#xff0c;四级考了3次…

“熊猫烧香”源码启示录

一、 引言 去年秋天回趟老家&#xff0c;适逢家中秋收后“祭宅神”。期间&#xff0c;听亲家二大娘在香毕吟颂的《十柱香》的佛歌&#xff0c;深有感触&#xff1a;百姓烧香祝的是神仙幸福&#xff0c;盼的是亲人平安—这 是作为衣食百姓发自内心的心愿&#xff01;但如今&…

ios之UISplitViewController

iPad的屏幕比iPhone大&#xff0c;所以在界面上&#xff0c;iPad比iPhone多一个UISplitViewController&#xff0c;用来实现iPad在横屏时&#xff0c;分两栏显示所需要的界面&#xff0c;可以一边是目录一边是具体的内容。下面我将详细的阐述UISplitViewController在ipad中的使…

为什么日本的科学那么牛?

▲ 点击查看日本化学家吉野彰&#xff0c;因发明了现代锂离子电池&#xff08;LIB&#xff09;&#xff0c;成为了今年的诺贝尔化学奖得主&#xff0c;一起获得这个奖项的&#xff0c;还有斯坦利惠廷汉姆、古迪纳夫。吉野彰事实上&#xff0c;当我们往回看这些年诺贝尔奖获得…

技术分享|单元测试推广与实战-在全新的DDD架构上进行单元测试

源宝导读&#xff1a;单元测试是伴随软件工程出现和发展的&#xff0c;怎么做大家可能各有见解。本文介绍了单元测试中的反模式&#xff0c;强调了可测试性的重要性&#xff0c;并以 DDD 架构项目的迭代进程作为示例&#xff0c;演示了单元测试的组织过程&#xff0c;展示了单元…

Object-C中的字符串对象1-不可变字符串

2019独角兽企业重金招聘Python工程师标准>>> #import <Foundation/Foundation.h>int main(int argc, const char * argv[]) {autoreleasepool {NSString *str1"this is string A";NSString *str2"this is string B";NSString *temp;NSCom…

硬盘分区与故障排解速查手册(1)

在所有计算机配件中&#xff0c;硬盘是一个比较特殊的角色&#xff0c;它不仅关系到系统的整体性能&#xff0c;而且用户的所有资料都保存在它的身上。 那么&#xff0c;硬盘该如何初始化呢&#xff1f;遇到硬盘故障该如何解决呢&#xff1f;一、大硬盘分区与格式化 硬盘分区是…

Ant Design Blazor 发布 0.9.0,共100+人贡献!

???? 截至这个版本&#xff0c;本项目一共迎来 101 位贡献者&#xff0c;是他们成就了这个项目&#xff01;在此感谢他们慷慨的贡献&#xff01;变更记录Tabs???? 增加路由服用多标签页组件 ReuseTabs。(demo) #1704 ElderJames???? 增加 OnClose 事件与 TabTempla…

人类究竟有多喜欢看热闹?! | 今日最佳

全世界只有3.14 % 的人关注了青少年数学之旅&#xff08;图源网络&#xff0c;侵权删&#xff09;

Python通过amqp消息队列协议中的Qpid实现数据通信

简介&#xff1a;这两天看了消息队列通信&#xff0c;打算在配置平台上应用起来。以前用过zeromq但是这东西太快了&#xff0c;还有就是rabbitmq有点大&#xff0c;新浪的朋友推荐了qpid&#xff0c;简单轻便。自己总结了下文档&#xff0c;大家可以瞅瞅。AMQP&#xff08;消息…

基于 Blazor 打造一款实时字幕

早先在录制视频的时候一直使用的是 obs-auto-subtitle 作为实时字幕展示功能。不过这个是以 OBS 插件的形式存在&#xff0c;不管是语言和功能上都有一定的限制。故而使用 Blazor server 实现一个。总体思路 实时字幕自然需要语音转文字的功能。考察了一些服务之后&#xff0c;…

一个数学系毕业的物理学家,是怎么拿到诺贝尔化学奖的?

全世界只有3.14 % 的人关注了青少年数学之旅2019年10月9日&#xff0c;这个“特别好”教授&#xff0c;1940年&#xff0c;“特别好”考上了耶鲁&#xff0c;1943年&#xff0c;“特别好”终于拿到数学学士学位。“特别好”特别沮丧&#xff0c;▲ “特别好”在牛津大学&#x…