shell 脚本执行
shell 脚本除了直接 ./test.sh 执行外,还可以用 sh 在子进程中执行、sh -x 打印执行过程便于调试、source 在父进程中执行,以及用 . 无需执行权限临时执行。
shell 脚本除了直接 ./test.sh 执行外,还可以用 sh 在子进程中执行、sh -x 打印执行过程便于调试、source 在父进程中执行,以及用 . 无需执行权限临时执行。
获取脚本执行结果通常依赖退出状态:0 表示成功,非 0 表示失败。通过 exit 命令可以显式设置脚本的退出码,本文给出一个包含函数与参数校验的完整示例。
在使用 Ansible ping 多台主机时遇到 SSH Permission denied 导致 UNREACHABLE 的报错。本文记录该问题的排查过程,并通过 ssh-keygen 生成密钥、ssh-copy-id 分发公钥的方式实现免密认证,最终验证问题解决。
shell 数组用括号声明多个值,通过下标访问、修改和删除元素。本文还给出 Docker 容器启动脚本中用数组配置多个应用及健康检查的实战示例,并总结 ${#A[]}、${A[]}、${A[@]} 等常用数组操作。
shell 中可以用关联数组实现字典(键值对)结构。本文演示用 declare -A 创建字典,以及访问、遍历、修改、删除键值对和获取字典长度的方法,适用于配置解析、数据传递等场景。