在 macOS 上编写并运行首个 Shell 脚本需四步:用纯文本编辑器创建含 shebang(#!/bin/zsh)的 hello.sh 文件;保存为 UTF-8 编码;通过 chmod +x 或 chmod 755 赋予执行权限;最后在终端中用 ./hello.sh 执行。
在 macos 上写并运行第一个 shell 脚本其实很直接,关键几步不绕弯、不漏权限、不卡环境。
写一个基础脚本文件
打开“文本编辑”或 VS Code、BBEdit 等纯文本编辑器(别用 Word 或 Pages),新建一个空白文件,输入以下内容:
#!/bin/zsh
echo "Hello, macOS!"
date
第一行 #!/bin/zsh 是 shebang,告诉系统用 zsh 执行这个脚本(macOS Catalina 及之后默认 shell 是 zsh);后面两行是实际命令。保存时选“UTF-8 编码”,文件名比如叫 hello.sh,后缀必须是 .sh(不是 .txt)。
让脚本变成可执行文件
macOS 默认不允许直接运行脚本,需要赋予执行权限。打开“终端”,用 cd 进入你存脚本的文件夹,例如:
$ cd ~/Downloads
然后运行:
- chmod +x hello.sh —— 最简方式,加执行权限
- 或更明确些:chmod 755 hello.sh(所有者可读写执行,组和其他人可读可执行)
执行完后,脚本图标在 Finder 中会显示为可执行样式(如有显示),但不必依赖图形判断,下一步就能验证。
在终端中运行它
仍在同一目录下,输入:
$ ./hello.sh
注意前面的 ./ —— 表示“当前目录下的这个文件”,缺了它系统不会在当前路径找,会报 “command not found”。成功的话,你会看到:
Hello, macOS!
Tue Jul 29 17:58:00 CST 2026
如果提示 “command not found”,检查是否漏了 ./;如果提示 “Permission denied”,说明 chmod 没生效,再跑一次 chmod 命令。
小技巧和避坑提醒
- 脚本开头的 shebang 必须是第一行,且不能有空格或 BOM 字符(用纯文本编辑器保存可避免)
- 想在任意位置运行?把脚本放进 /usr/local/bin/(需 sudo 权限),或添加到 PATH 中
- 调试时可在脚本末尾加 read,让终端暂停,方便看输出
- 避免中文路径——脚本放在英文名文件夹里(如 ~/Scripts),减少编码和空格问题


















