问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Linux里面set -e命令作用是什么?

发布网友 发布时间:2022-04-24 19:33

我来回答

3个回答

热心网友 时间:2023-01-22 04:13

Linux里面set -e命令作用是,如果一个命令返回一个非0退出状态值(失败),就退出.

这个命令-e参数企业应用极少

set的“+” ,"-" 分别用于关闭或者打开某些特性;具体的特性有很多,这里介绍 -e 特性:

set -e ; 表示后续所有的bash 命令的返回code 如果不是0,那么脚本立即退出,后续的脚本将不会得到执行的机会;

set +e ; 这个是默认的状态,表示就算后续的命令如果返回值不是0,那么脚本依然向下执行;

所以 set -e其实就是从设置的位置起,给脚本的每一条命令加上了同一个退出条件;而set +e 则是取消这种设置;

看下面的例子:

[root@oldboy ~]# cat test.sh

#!/bin/bash

function lookupstr(){

grep "sles" /etc/os-release >/dev/null 2>&1

if [ "$?" -ne 0 ];then

echo -e "Can not find the 'sles' string in file.\n"

fi

}

echo "Below results based on: set +e"

set +e

lookupstr

echo "Below results based on: set -e"

set -e

lookupstr

[root@oldboy ~]# ./test.sh

Below results based on: set +e

Can not find the 'sles' string in file.

Below results based on: set -e

[root@oldboy ~]#

set -e option 可以帮助优化脚本

热心网友 时间:2023-01-22 05:31

1使用-e帮助你检查错误;
2防止错误像滚雪球般变大导致一个致命的错误,而这些错误本应该在之前就被处理掉;
3如果要增加可读性,可以使用set -o errexit,它的作用与set -e相同;

热心网友 时间:2023-01-22 07:06

每个脚本都应该在文件开头加上set -e。
这句语句告诉bash如果任何语句的执行结果不是true则应该退出。这样的好处是防止错误像滚雪球般变大导致一个致命的错误,而这些错误本应该在之前就被处理掉。如果要增加可读性,可以使用set -o errexit,它的作用与set -e相同。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...每次文字比较多超出屏幕大小就不知道怎么截屏,求教大佬! 我国政策性 广西明士清医疗器械有限公司怎么样? 广西禾力药业有限公司怎么样? 广西龙母圣商贸有限公司怎么样? 安徽合肥有什么去痔的好地方 我女朋友的谷丙转氨酶过高(达到121),而且两对半检测为阴性,是肝功能有... 泸州丽人女子医院开展科室 自由之子本次世界杯是否将在小组赛中被菜? 世界杯谁会嬴 八千里路云和月是什么歌中的歌词?? 八千里路云和月是什么歌中的歌词 请问哪位有《为内蒙古喝彩》的歌词?多谢! 找首老歌女歌手主唱中间副歌部分好像是韩磊 歌词中带有我要飞或是我想飞的记不清了。女歌手嗓音很浑厚高亢 为内蒙古喝彩的间奏简谱 一首歌 歌词有 穿越八千里路云和月 成功儿女 歌名是什么? 最火的草原歌曲有哪些 十首最火的草原歌曲是什么? 为内蒙古喝彩是那一年创作的 谁知道“为内蒙古喝彩”这首歌谁唱的 为内蒙古喝彩用汉语表示蒙语的发音 对歌词:<<为内蒙古喝彩>>的理解 有一首草原歌,里面歌词是这样的,八千里路云和月,乘风而来,骑上我心爱的黑骏马,乘风而去. 为内蒙古喝彩的歌词是什么啊? 请问为内蒙古喝彩的歌词是什么?有哪些歌手参与了歌唱? 《为内蒙古喝彩》的歌词谁知道? 为内蒙古喝彩的歌词 洛克王国遗落的蛋里面是什么 哪些行业会用到空气压缩机? 我的世界创造模式 ,这些蛋里面是什么?是干什么的?详细一些。谢谢! linux中 if [ ! -e logical ];———-e 和 ! -e在这里有什么区别? Linux里面sed -e命令作用是什么? linux安装在E盘 linux下bash 下 cd [-L|[-P [-e]] [-@]] [dir]参数分别是什么意思? 快速 煮饭 方法 怎么煮饭 linux编译 gcc -E 怎么煮饭? 想要了解苹果手机哪个类型适用于5G网络有了解的吗?有清楚的吗? 肚子胀痛,上腹有硬块 左上腹腹部有硬块,请问是什么 左上腹部疼痛,按压有硬块 右上腹有硬块,有时吃完饭会有点不舒服,睡一觉又好了,这是怎么回事? 右上腹有硬块用手能摸到,平躺着好像到肋骨里去了,感觉肚子里有气,腰有时酸胀 上腹部中间有个硬块,刚开始碰到了疼,过了一天摸不疼了,现在吃什么都没胃口。 重力感应关闭怎么设置打开 vivo xshot重力感应从哪设置? vivo手机的重力感应没反应了怎么办? vivoy79a重力感应怎么设置 vivox5pro怎么关闭重力感应?