shell 脚本中set -e选项作用范围
编写shell脚本没多久,对于其许多命令的具体用法还不太熟悉。最近刚好有需求,就尝试用脚本去实现。其中就有用到set -e选项。 在用这个命令之前,也查过其功能,描述比较简单:就是当命令以非零状态退出时,则退出shell。主要作用是,当脚本执行出现意料之外的情况时,立即退出,避免错误被忽略,导致最终结果不正确。这里主要讨论的是set -e 选项的作用范围,创建如下测试文件: zhenglei@SzExdroid14:~/study/scripts$ cat run.sh #!/bin/bash set -e test_dir/set.sh zhenglei@SzExdroid14:~/study/scripts$ cat test_dir/set.sh #!/bin/bash set -e function return1() { return 1 } function return0() { return 0 } function returnf() { return $1 } echo "run start" return1 if [ $? -ne 0 ];then echo "cmd error" fi echo "run end !" 单独执行test_dir/set.sh时打印如下: zhenglei@SzExdroid14:~/study/scripts$ ./test_dir/set.sh run start (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |