首页 > 系统服务 > 详细

shell脚本中set -e作用

时间:2019-11-13 18:52:12      阅读:79      评论:0      收藏:0      [点我收藏+]

最近学习shell脚本想到一个问题,如果脚本中出现了一条异常语句,甚至可以影响整个脚本的使用,那么是否有一旦出现问题就可以及时停止的方法呢?在shell脚本中set命令就可以轻松实现。set命令的-e参数,linux系统自带的说明是:"Exit immediately if a simple command exits with a non-zero status.",也就是说,在"set -e"之后出现的代码,一旦出现了返回值非零,整个脚本就会立即退出,那么就可以避免一些脚本的危险操作。

实验如下:

#!/bin/sh
#set -e
ls /data/leo
echo $?
./ex1.sh

如果没有使用set -e,在ls /data/leo语句时会提示找不到文件,但会继续执行下一条语句
技术分享图片
使用了set -e后,在ls /data/leo语句时依然会提示找不到文件,但不会执行下一条语句了
技术分享图片

补充:关于exit 0 exit 1以及echo $?说明
exit 0---是正常退出的命令
exit 1---是非正常退出的命令
echo $?获取上次命令执行的结果,如果是0就是正常执行,如果非0就是执行出现了异常

shell脚本中set -e作用

原文:https://www.cnblogs.com/zhouzhifei/p/11851513.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!