Cmd错误:" sh"不被识别为内部或外部命令,可操作程序或批处理文件。
C:\Users\user>npm install -g node-curl
npm http GET https://registry.npmjs.org/node-curl
npm http 304 https://registry.npmjs.org/node-curl
> node-curl@0.1.4 install C:\Users\user\AppData\Roaming\npm\node_modules\node-cu
rl
> sh src/generate_curl_options_list.sh && node-waf configure build || true
"sh" is not recognized as an internal or external command, operable program or batch file.
"true" is not recognized as an internal or external command, operable program or batch file.
答案 0 :(得分:5)
扩展Florian的答案:你在Windows上,没有cURL
或sh
。您正在尝试安装依赖于提供libcurl-library和sh
的操作系统的模块,该模块不随Windows一起提供。
你有一些选择:
编写您自己的节点实现,其行为类似于curl。
在SO上查看此问题:Curl equivalent in nodejs?
它详细介绍了如何使用内置http
模块,如curl。
或者使用cygwin等工具在Windows上安装libcurl
和sh
。我没试过这个,你尝试安装的npm模块可能仍然依赖于cygwin无法解决的其他unix工具。
或者在http://search.npmjs.org/中寻找与curl相似的其他内容。试试httpsync
或curly
我推荐选项1,它会教你基本的http原则。节点中的本机模块已经提供了您可能需要卷曲的所有内容。 :)
答案 1 :(得分:-4)
好吧,在窗口上使用没有curl的node-curl是非常愚蠢的。
不要试试。