mac中创建 .command 文件,执行node服务

方法1:

1.​​将脚本保存为 .command 格式​

用文本编辑器创建文件,命名为 start_server.command,内容如下:

复制代码
#!/bin/bash
# 切换到脚本所在目录(解决双击运行时路径问题)
cd "$(dirname "$0")"

echo -e "\033[32mNode.js 服务启动器\033[0m"
echo "正在启动 Node.js 服务..."
echo "当前目录: $(pwd)"

if [ -f "fuwu.js" ]; then
    node fuwu.js
else
    echo -e "\033[31m错误: 未找到 fuwu.js 文件\033[0m"
fi

read -n 1 -s -r -p "按任意键继续..."

2.​​赋予执行权限​

在终端运行:

复制代码
chmod +x /path/to/start_server.command
  • 双击运行​

    现在双击文件会自动在终端中执行脚本。

方法 2:快速创建步骤(适合新手)

  1. 打开 ​终端.app​
  2. 依次执行以下命令:
复制代码
   # 创建文件并编辑
   nano ~/Desktop/start_server.command

   # 粘贴上述脚本内容,按 Ctrl+O 保存,Ctrl+X 退出

   # 赋予权限
   chmod +x ~/Desktop/start_server.command
  1. 现在桌面上会出现可双击运行的图标。

常见问题解决

  1. ​报错 _无法打开,因为来自身份不明的开发者_​

    → 右键文件 → 「打开」→ 点击弹出窗口的「打开」按钮。

    (首次运行需此操作,这是 macOS 的安全限制)

  2. ​窗口秒退​

    → 确保脚本包含 read -n 1... 或最后一行是 exec $SHELL

  3. ​中文乱码​

    → 确保文件编码为 ​​UTF-8(无 BOM)​​(用 VS Code 或 BBEdit 保存时选择)。

相关推荐
子兮曰2 小时前
async/await高级模式:async迭代器、错误边界与并发控制
前端·javascript·github
恋猫de小郭3 小时前
2026 Flutter VS React Native ,同时在 AI 时代 VS Native 开发,你没见过的版本
android·前端·flutter
GIS之路5 小时前
ArcGIS Pro 中的 Notebooks 入门
前端
IT_陈寒6 小时前
React状态管理终极对决:Redux vs Context API谁更胜一筹?
前端·人工智能·后端
Kagol7 小时前
TinyVue 支持 Skills 啦!现在你可以让 AI 使用 TinyVue 组件搭建项目
前端·agent·ai编程
柳杉7 小时前
从零打造 AI 全球趋势监测大屏
前端·javascript·aigc
simple_lau7 小时前
Cursor配置MasterGo MCP:一键读取设计稿生成高还原度前端代码
前端·javascript·vue.js
睡不着先生7 小时前
如何设计一个真正可扩展的表单生成器?
前端·javascript·vue.js
天蓝色的鱼鱼7 小时前
模块化与组件化:90%的前端开发者都没搞懂的本质区别
前端·架构·代码规范
明君879977 小时前
Flutter 如何给图片添加多行文字水印
前端·flutter