script模块 - 外卖厨师
相当于你把做好的菜谱(脚本文件)分发给别人厨房执行
适合场景:
✓ 需要复杂菜谱(多步骤脚本)
✓ 保证每家分店味道一致(环境标准化)
示例:把《红烧肉制作指南.sh》发给所有餐厅
shell模块 - 全能大厨
相当于直接远程指挥厨师做菜
危险操作:
✗ “把油锅烧到冒烟再下肉”(可能引发火灾)
适合场景:
✓ 需要即兴发挥(管道/重定向)
✓ 查看厨房状况(df -h查磁盘)
command模块 - 标准化料理包
像使用预制菜,严格按说明书操作
安全限制:
✓ 不准用明火(禁止Shell特性)
✓ 必须用指定刀具(绝对路径)
示例:/usr/bin/apt install vim(标准化安装)
那该怎么选?记住以下三句话:
- 有现成脚本 → 叫外卖(script)
- 要高级操作 → 请大厨(shell)
- 简单又安全 → 用料理包(command)
真实案例对比
危险做法(容易翻车,发生事故):
- shell: "rm -rf /tmp/*" # 相当于喊"把厨房垃圾桶清空"
安全做法:
- command: /usr/bin/rm /tmp/expired.log # 相当于说"请用专用工具处理过期日志"