我想package.json从命令行获取详细信息.一个例子:
$ cd ~/my-node-package
$ npm commandiamlookingfor package name
my-package-name
Run Code Online (Sandbox Code Playgroud)
我知道这将是一个琐碎的剧本.我可以这样做:
node -e "try {var pack=require('./package.json'); console.log(pack.name); } catch(e) {}"
Run Code Online (Sandbox Code Playgroud)
但是我不必编写(和维护)的任何代码都是最好的代码.此外,由于我想将它用于shell集成,它将运行很多; 本机实现可能会更快.
NPM具有存储的环境变量.您可以通过npm run env在控制台中键入来查看这些内容.
您可以使用此方法通过npm_package_namegrepping 获取所需的变量,但这会留下"npm_package_name = your_package_name".
绕过它的一种方法是使用命令获取"="字符后面的子字符串:
cut -d "=" -f 2 <<< $(npm run env | grep "npm_package_name")
此命令将为您提供包名称.
编辑:
另一种方式做,这是通过在添加脚本package.json是简单地echo $npm_package_name然后运行该脚本在你的shell命令.
你package.json会看起来像这样:
{
"name": "your_package_name",
"scripts": {
"getName": "echo $npm_package_name"
}
}
Run Code Online (Sandbox Code Playgroud)
然后输入 npm run getName -s
| 归档时间: |
|
| 查看次数: |
2726 次 |
| 最近记录: |