
Linux: shell 脚本篇
平时写 Java, Python, 甚至一些前端代码. 但最近工作上要写 shell 脚本, 发现有些生疏了, 这篇文章记录一些基本的 shell 脚本写法, 偶尔翻翻, 加深记忆. 因为此文目的是复习 常用的 shell 脚本写法, 所以文中不会很细节. set -euo pipefail set -euo pipefail 是三个 set 选项组合在一起,用来让脚本执行时更严格、更安全。 set -e 作用: 当任何命令返回 非零状态码(执行失败) 时,立刻退出整个脚本。 默认情况下,Bash 脚本就算中间某个命令失败,也会继续执行。 set -u 作用: 当脚本中使用未定义的变量时,立即报错并退出。 默认情况下,使用未定义变量会被当成空字符串处理,不会报错。 set -o pipefail 作用: 让管道 (|) 命令在任意一环节失败时,都返回失败状态码。 默认情况下,管道命令的返回值是最后一个命令的返回值。 如果前面命令失败,但最后一个命令成功,脚本也会认为成功,这是有风险的。 开启 pipefail 后,管道中只要有一个命令失败,整个管道就会被视为失败。 控制语句 条件判断(if/else) if [ 条件表达式 ]; then 命令 elif [ 条件表达式 ]; then 命令 else 命令 fi 例子: #!/bin/bash num=5 if [ $num -gt 10 ]; then echo "大于10" elif [ $num -eq 10 ]; then echo "等于10" else echo "小于10" fi 函数返回值: ...
