最佳答案
我正在 MacOS 上制作一个 NW.js 应用程序,并希望在开发模式下运行该应用程序 通过双击图标。 在第一步中,我尝试使我的 shell 脚本工作。
使用 Windows 上的 VS Code (我想争取时间) ,我在项目的根目录下创建了一个 run-nw
文件,其中包含:
#!/bin/bash
cd "src"
npm install
cd ..
./tools/nwjs-sdk-v0.17.3-osx-x64/nwjs.app/Contents/MacOS/nwjs "src" &
但我得到了这个输出:
$ sh ./run-nw
: command not found
: No such file or directory
: command not found
: No such file or directory
Usage: npm <command>
where <command> is one of: (snip commands list)
(snip npm help)
npm@3.10.3 /usr/local/lib/node_modules/npm
: command not found
: No such file or directory
: command not found
有些事我不明白。
\n
代替 \r\n
(以防 \r
产生问题)但它不会改变任何东西。dirname
指令) ,
或者它不知道 cd
命令?install
到 npm
的参数。npm install
) ..。不能让它正常工作,并怀疑一些奇怪的东西
文件本身,我直接在 Mac 上创建了一个新的,这次使用的是 vim。
我输入了完全相同的指令,而且... 现在它没有任何工作
问题。
两个文件的 diff
显示完全没有差别。
有什么区别吗? 是什么导致第一个脚本不起作用? 我怎样才能找到答案?
按照接受的答案的建议,后错误的行
结局出来了,我查了很多东西。
事实证明,因为我从 Windows 中复制了我的 ~/.gitconfig
机器,我有 autocrlf=true
,所以每次我修改 bash
文件,它将行尾重新设置为 \r\n
。
因此,除了运行 dos2unix
(您将不得不
安装) ,如果你正在使用 Git,请检查你的
.gitconfig
文件。