我对Node.js很新,所以请不要讨厌
我发现NPM非常有用,因为我可以在全局安装Node.js包,然后像独立的可用path应用程序一样使用它们。
这在Windows上工作,这真的让我感到惊讶。
比如我用这种方法安装了UglifyJS,通过npm install -g uglifyjs
,现在我可以从系统的任何地方,从控制台通过uglifyjs <rest of command>
(而不是node uglifyjs ..
或者其他)运行它。
我想创build自己的独立 Node.js应用程序。 我如何得到星号? 我在这里问,因为大多数教程只涵盖了如何编写一个简单的脚本,然后运行它node
(我已经覆盖)
package.json :
{ "name": "hash", "version": "1.0.0", "author": "Kiel V.", "engines": [ "node >= 0.8.0" ], "main": "hash.js", "dependencies": { "commander" : "1.2.0" }, "scripts": { "start": "node hash.js" } }
hash.js :
var crypto = require('crypto'), commander = require('commander'); /* For use as a library */ function hash(algorithm, str) { return crypto.createHash(algorithm).update(str).digest('hex'); } exports.hash = hash; /* For use as a stand-alone app */ commander .version('1.0.0') .usage('[options] <plain ...>') .option('-a, --algorithm [algorithm]', 'Hash algorithm', 'md5') .parse(process.argv); commander.args.forEach(function(plain){ console.log( plain + ' -> ' + hash(commander.algorithm, plain) ); });
假设我在node-hash
目录中只有这两个文件。 我如何安装这个项目,以便以后我可以运行在cmd.exe
通过hash -a md5 plaintext
-md5 hash -a md5 plaintext
就像coffescript,jslint等安装?
你必须添加一些代码到package.json和hash.js,然后你可以运行这个命令从本地文件夹安装包。
npm install -g ./node-hash
的package.json
{ "name": "hash", "version": "1.0.0", "author": "Kiel V.", "engines": [ "node >= 0.8.0" ], "bin": { "hash": "hash.js" }, "main": "hash.js", "dependencies": { "commander" : "1.2.0" }, "scripts": { "start": "node hash.js" } }
hash.js
#!/usr/bin/env node var crypto = require('crypto'), commander = require('commander'); /* For use as a library */ function hash(algorithm, str) { return crypto.createHash(algorithm).update(str).digest('hex'); } exports.hash = hash; /* For use as a stand-alone app */ commander .version('1.0.0') .usage('[options] <plain ...>') .option('-a, --algorithm [algorithm]', 'Hash algorithm', 'md5') .parse(process.argv); commander.args.forEach(function(plain){ console.log( plain + ' -> ' + hash(commander.algorithm, plain) ); });