当前位置: 首页 > news >正文

Windows 系统 上尝试直接运行 .sh(Shell 脚本)文件

这个错误是因为你在 Windows 系统 上尝试直接运行 .sh(Shell 脚本)文件,而 Windows 默认不支持 Unix/Linux 的 Shell 命令。以下是几种解决方案:


解决方案 1:使用 Git Bash(推荐)

如果你安装了 Git for Windows,它会自带 Git Bash,可以运行 .sh 文件:

  1. 修改 package.json
    "scripts": {"dev": "bash ./scripts/run_dev.sh --env=dev"
    }
    
  2. 运行
    npm run dev
    

解决方案 2:转换为 Windows 批处理文件(.bat)

如果不想依赖 Git Bash,可以 .sh 脚本转换成 .bat 脚本

  1. 新建 run_dev.bat(放在 ./scripts/ 目录下):
    @echo off
    REM 这里是原 run_dev.sh 的命令,改成 Windows 可执行的格式
    node server.js --env=dev
    
  2. 修改 package.json
    "scripts": {"dev": ".\\scripts\\run_dev.bat --env=dev"
    }
    
  3. 运行
    npm run dev
    

解决方案 3:使用 WSL(Windows Subsystem for Linux)

如果你使用 WSL(适用于 Linux 的 Windows 子系统),可以这样运行:

  1. 修改 package.json
    "scripts": {"dev": "wsl ./scripts/run_dev.sh --env=dev"
    }
    
  2. 运行
    npm run dev
    

解决方案 4:使用 shx(跨平台 Shell 命令)

  1. 安装 shx
    npm install --save-dev shx
    
  2. 修改 package.json
    "scripts": {"dev": "shx ./scripts/run_dev.sh --env=dev"
    }
    
  3. 运行
    npm run dev
    

解决方案 5:直接使用 Node.js 替代 Shell 脚本

如果 run_dev.sh 只是运行 Node.js 命令,可以直接在 package.json 里写:

"scripts": {"dev": "node server.js --env=dev"
}

然后运行:

npm run dev

总结

方案适用场景备注
Git Bash已安装 Git for Windows推荐,最接近 Linux 环境
.bat 转换纯 Windows 环境需手动改脚本
WSL已安装 WSL适合 Linux 兼容环境
shx需要跨平台支持需额外安装
直接 Node 命令脚本较简单无需 Shell

推荐做法

  • 个人开发Git Bashbash ./scripts/run_dev.sh
  • 团队项目提供 .bat.sh 双版本,或者用 shx 跨平台支持

这样,你的 npm run dev 就能在 Windows 上正常运行了! 🚀

http://www.lryc.cn/news/620162.html

相关文章:

  • OpenFeign 服务调用原理与源码分析
  • Endnote 20超详细入门教程(实现参考论文的插入)
  • 类和对象(中下)
  • ARM芯片架构之CoreSight Channel Interface 介绍
  • 机器学习-Cluster
  • 机器学习——svm支持向量机
  • mac下载maven并配置,以及idea配置
  • O2OA:数字化转型中安全与效率的平衡之道
  • 深入理解 uni-app 的 uni.createSelectorQuery()
  • 云电竞游戏盒子技术分析
  • BAW56LT1G ON安森美 双串联开关二极管 电子元器件
  • Linux系统文件完整性检查工具AIDE在生产环境中推送钉钉告警
  • Nginx Stream代理绕过网络隔离策略
  • 雨量系列篇一:翻斗雨量传感器与压电雨量传感器的区别是什么
  • 古诗词多媒体内容生成工作流文档操作流程
  • 杂记 01
  • reactive和ref使用方法及场景
  • 基于通用优化软件GAMS的数学建模和优化分析(GAMS安装和介绍、GAMS程序编写、GAMS程序调试)
  • Python 类元编程(元类基础知识)
  • 正则表达式解析(三)
  • (50)QT 绘图里,视图 QGraphicsView、场景 QGraphicsScene 及图形项 QGraphicsRectItem 的举例
  • Unity:GUI笔记(二)——工具栏和选择网格、滚动列表和分组、窗口、自定义皮肤样式、自动布局
  • 面试实战 问题二十七 java 使用1.8新特性,判断空
  • 机器学习-----DBSCAN算法
  • 电子电气架构 --- 软件项目文档管理
  • mysql的快照读与当前读的区别
  • 云电竞游戏盒子相比传统PC有什么优势?
  • YOLO-v2-tiny 20种物体检测模型
  • Unity中启用DLSS 【NVIDIA】
  • 循序渐进学 Spring (上):从 IoC/DI 核心原理到 XML 配置实战