shell_set用法

2019-08-08  本文已影响0人  _str_

shell_set用法

set -u

当脚本中遇到未定义的变量时,默认是忽略 但有时侯并不是我们想要的
假如有定义的变量,应该报错,并且终止脚本继续运行。
set-u就可以办到
示例

#!/usr/bin/env bash
set -u

echo $a
echo shark

执行报错

$ bash set.sh
set.sh: line 13: a: unbound variable

set -x

这个是调试脚本使用的,可以看到每个执行的命令,和执行命令后的输出结果

#!/usr/bin/env bash
set -x

echo shark

bash -x set.sh相同的含义

set -e

脚本中有任何命令的返回值是非零,脚本则立即停止执行
对管道的命令无效

foo | echo shark

foo 不是 shell 中的命令,执行会报错,但是其后面有个管道,最终管道后的 echo 命令执行成功了,这种情况下 脚本会继续执行。

set -o pipefail

如果设置,如果管道中的所有命令都成功退出,则返回零。 默认情况下禁用此选项

上一篇下一篇

猜你喜欢

热点阅读