Linux里面set-e命令作用是什么?老男孩Linux运维培训班
老男孩IT教育
行业新闻
2022年1月13日 18:14
在Linux操作系统中,set命令主要用于设置shell,它能设置所使用shell的执行方式,可依照不同的需求来做设置,而-e是Linux set命令常用的参数之一。那么Linux里面set-e命令作用是什么?如何使用?以下是详细的内容介绍。
在Linux操作系统中,set命令主要用于设置shell,它能设置所使用shell的执行方式,可依照不同的需求来做设置,而-e是Linux set命令常用的参数之一。那么Linux里面set-e命令作用是什么?如何使用?以下是详细的内容介绍。

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 可以帮助优化脚本
想要了解更多Linux运维命令的知识,可以关注老男孩IT教育。老男孩IT教育是行业内较早从事Linux培训的机构,师资团队强大、课程体系完善,全企业级真实案例授课,助你快速高薪就业。
推荐阅读:
老男孩教育专注IT教育10余年,只培养IT技术精英
全国免费咨询电话(渠道合作):400-609-2893











