cygwin / windows下的NPM脚本:命令的语法不正确

我在Windows 7计算机上运行Node 6.9.5和NPM 3.10.10。我的终端是Cygwin 2.877。

如果我尝试在Cygwin中运行以下命令,则效果很好:

mkdir mydir/mysubdir;

但是,如果我将其放入package.json文件中,例如:

"scripts": {

"test": "mkdir mydir/mysubdir"

},

并运行:

npm run test

它失败并显示:

The syntax of the command is incorrect.

仔细搜索以上内容之后,似乎是Windows命令提示符错误,而不是Cygwin错误。因此,似乎NPM尝试使用命令提示符而不是现有的Cygwin环境运行脚本。

我怎样才能解决这个问题?或者更确切地说,如何确保NPM在正在从其调用的终端环境中运行脚本?

回答:

回答:

如果您希望它在bash中运行,则将其放入package.json

"scripts": {

"test": "bash test.sh"

},

并放在test.sh

#!/bin/bash

mkdir mydir/mysubdir

或者,如csvan在评论中指出的,您可以使用Node脚本而不是Shell脚本:

"scripts": {

"test": "node test.js"

},

这种方法对于跨平台兼容性甚至更好。

以上是 cygwin / windows下的NPM脚本:命令的语法不正确 的全部内容, 来源链接: utcz.com/qa/425847.html

回到顶部