npm常用命令详解
~~~https://www.npmjs.org/有比较全的api文档
NPM是一个Node包管理和分发工具,已经成为了非官方的发布Node模块(包)的标准。有了NPM,可以很快的找到特定服务要使用的包,进行下载、安装以及管理已经安装的包。~~查找 安装和管理包
NPM常用的命令有:
(1)$ npm install moduleNames
安装Node模块
注意事项:如果在使用模块的时候不知道其名字,可以通过http://search.npmjs.org网站按照
索引值找到想要的模块。npm也提供了查询的功能 $ npm search indexName 安装完毕后会产生一个node_modules目录,其目录下就是安装的各个node模块。node的安装分为全局模式和本地模式。一般情况下会以本地模式运行,包会被安装到和你的应用代码统一文件夹的node_modules目录下。在全局模式下,Node包会被安装到Node的安装目录下的node_modules下。全局安装命令为$ npm install -g moduleName。获知使用$npm set global=true来设定安装模式
,$npm get global可以查看当前使用的安装模式。
(2)$ npm view moduleNames
查看node模块的package.json文件夹
注意事项:如果想要查看package.json文件夹下某个标签的内容,可以使用$ npm view moduleName labelName
(3)$ npm list
查看当前目录下已安装的node包
注意事项:Node模块搜索是从代码执行的当前目录开始的,搜索结果取决于当前使用的目录中
的node_modules下的内容。$ npm list parseable=true可以目录的形式来展现当
前安装的所有node包
(4)$ npm help
查看帮助命令
(5)$ npm view moudleName dependencies
查看包的依赖关系
(6)$ npm view moduleName repository.url
查看包的源文件地址
(7)$ npm view moduleName engines
查看包所依赖的Node的版本
(8)$npm help folders
查看npm使用的所有文件夹
(9)$ npm rebuild moduleName
用于更改包内容后进行重建
(10)$ npm outdated
检查包是否已经过时,此命令会列出所有已经过时的包,可以及时进行包的更新
(11)$ npm update moduleName
更新node模块
(12)$ npm uninstall moudleName
卸载node模块
(13)一个npm包是包含了package.json的文件夹,package.json描述了这个文件夹的结构。访
问npm的json文件夹的方法如下:
$ npm help json
此命令会以默认的方式打开一个网页,如果更改了默认打开程序则可能不会以网页的形式打
开。
(14)发布一个npm包的时候,需要检验某个包名是否已存在
$ npm search packageName
(15)很多时候我们在使用一个npm包的时候经常会忘记了require其相互依赖的模块,我们可以
借助如如下命令来查看此模块相互依赖的包都有哪些
npm是Node.JS的程序包管理器。进行Node.JS开发时,经常使用它安装/卸载程序包。实际上,发布程序包的工作也是由它来完成的。
配置package.json
要打包程序,首先要配好各项设置,这些设置都由程序包根目录下的package.json指定。package.json的内容必须是严格的JSON格式,也就是说:
字符串要用双引号括起来,而不能用单引号;
属性名一定要加双引号;
最后一个属性后千万不要多加一个逗号。
配置对象的属性很多,具体可以参阅这里,这里列一下常用的项目:
name:程序包名,不能跟已有的程序包重复。
version:版本号。
description:一段简短的介绍。
author:作者信息。包含name、email、url三项属性。
bin:如果程序中有可执行文件(主要是命令行里面调用的),就在这里指定,可以指定多个。
main:使用require调用本程序包时的程序入口。
dependencies:依赖的程序包,可以指定版本号。
配置好package.json后,可以先在本地打包安装一次,测试程序运作是否正常,安装命令为:
npm install <本地路径>
另外,还有一条潜规则要注意,如果你希望程序包中的可执行程序在Node.JS的环境中运行,那么,请在程序入口文件的最前面加上这样一行:
#!/usr/bin/env node
如果没有这一行,它将以系统默认的方式打开,而不是在Node.JS的环境中运行。
注册npm帐号
要把程序包发布到npm,还需要先注册一个帐号。npm并没有提供网页版的注册向导。注册也要通过命令行来进行:
npm adduser
执行此命令后,会依次出现输入用户名、Email、密码的提示,输入好之后等待一会儿就可以了。
发布程序包
准备工作都做好了,执行下面的命令就可以发布程序包:
npm publish <本地路径>
如果要更新程序包,只要修改一下package.json中的版本号,再重新执行发布命令就可以了。
---------------------------------------------------------------------
npm install -g package_name //安装
npm install -g package_name@version //安装指定版本
npm uninstall -g package_name //卸载
npm update -g package_name //更新包
系统环境变量 设置NODE_PATH=C:\Users\Administrator\AppData\Roaming\npm\node_modules
require模块时(require(pkg)),NODE_PATH也会被遍历。
npm config list //查看配置信息
npm config ls -l //查看所有配置信息
npm get global //查看全局模式的值
npm set global=true //设置为默认全局模式
npm -h //查看帮助
npm --help
npm help
npm apihelp
npm install -h //查看某个命令帮助
npm owner ls package_name //列出 包的所有者
npm view package_name //查看包的package.json文件
npm view package_name key //查看包的package.json文件的某个设置项
npm list //查看当前目录已安装的包
Node模块搜索是从代码执行的当前目录开始的,搜索结果取决于当前使用的目录中的node_modules下的内容。
npm常用命令详解的更多相关文章
- 【原】npm 常用命令详解
今年上半年在学习gulp的使用,对npm的掌握是必不可少的,经常到npm官网查询文档让我感到不爽,还不如整理了一些常用的命令到自己博客上,于是根据自己的理解简单翻译过来,终于有点输出,想学习npm这块 ...
- npm 常用命令详解[转]
npm是什么 NPM的全称是Node Package Manager,是随同NodeJS一起安装的包管理和分发工具,它很方便让JavaScript开发者下载.安装.上传以及管理已经安装的包. npm ...
- npm 常用命令详解
本文以Windows平台上做测试,以gulp为示例做教程,出自作者白树,转载请声明出处! 目录 npm是什么 npm install 安装模块 npm uninstall 卸载模块 npm updat ...
- npm 常用命令详解(转载)
学习gulp的使用时,对npm的掌握是必不可少的,经常到npm官网查询文档让我感到不爽,还不如整理了一些常用的命令博客上,于是根据自己的理解简单翻译过来,终于有点输出,想学习npm这块的朋友不可错过这 ...
- Hexo系列(三) 常用命令详解
Hexo 框架可以帮助我们快速创建一个属于自己的博客网站,熟悉 Hexo 框架提供的命令有利于我们管理博客 1.hexo init hexo init 命令用于初始化本地文件夹为网站的根目录 $ he ...
- hbase shell基础和常用命令详解(转)
HBase shell的基本用法 hbase提供了一个shell的终端给用户交互.使用命令hbase shell进入命令界面.通过执行 help可以看到命令的帮助信息. 以网上的一个学生成绩表的例子来 ...
- samtools常用命令详解(转)
转自:samtools常用命令详解 samtools的说明文档:http://samtools.sourceforge.net/samtools.shtml samtools是一个用于操作sam和ba ...
- cisco常用命令详解
cisco常用命令详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.常用命令用法展示 1.命令行模式的来回切换 yinzhengjie>enable #从用户模式切换到 ...
- H3C常用命令详解
H3C常用命令详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 1.关闭后台日志输出 <yinzhengjie>sys [yinzhengjie]undo info- ...
随机推荐
- spring mvc框架 遇到的问题
web.xml配置文件代码: <?xml version="1.0" encoding="UTF-8"?> <web-app version= ...
- IIS发布网站后局域网其他用户不能访问问题(转)
如果本机能正常访问,而局域网其他用户不能访问,那么判断的结果很可能是防火墙问题. 解决方法: 既然问题出在Windows7或Windows Server 2008 R2的防火墙上,那么我们可以有以下两 ...
- [Laravel 5] 表单验证 Form Requests and Controller Validation
本文 转载自:http://blog.hsin.tw/2015/laravel-5-note09-form-requests-and-controller-validation/ 文章解答了我的困惑非 ...
- JQuery 在$(window).load() 事件中 不运行 $(window).resize()
本文转载至: http://stackoverflow.com/questions/2597152/jquery-window-resize-doesnt-work-on-load 原文标题 :J ...
- 四轴飞行器1.2.3 STM32F407时钟配置和升级标准库文件
原创文章,欢迎转载,转载请注明出处 这个星期进度比较慢哈,只有周末和晚上下班回来才能做,事件不连续,琐碎的事情又比较多,挺烦的,有多琐碎呢? 1.本人有点小强迫症哈,虽然RTT将文 ...
- APM代码学习笔记3:执行过程
以Linux平台ArduPlane为例 \ArduPlane\Plane.cpp 定义Plane类 继承自AP_HAL::HAL::Callbacks ,获取hal对象. \ArduPlane\Ard ...
- jquery 小插件,完成“输入字段预期值的提示信息”,防html5 placeholder属性
前言:在很多时候,我们需要文本框中显示默认值,获取焦点时,文字框中就会清空给的值,当失去焦点时,如果没有值,继续显示默认的文字,如果有输入值,就显示输入的值.现在项目中需要用到这个地方的功能比较多,于 ...
- uglifyjs note
uglifyjs UglifyJS is a JavaScript parser, minifier, compressor or beautifier toolkit. uglifyjs是用js写的 ...
- Win7下使用protel99se、protel99
很多网友需要用的protel99se,由于该软件开发的时间比较就早,在现在笔记本普及,尤其是win7普及的情况下,用该软件着实让许多人头痛,有人选择安装XP系统,但这就牺牲了win7良好的操作体验.也 ...
- 实现将VirtualBox 虚拟机转换为KVM虚拟机的步骤
原来在桌面上一直使用virtualbox虚拟机管理程序(VMM)构建虚拟机安装不同的操作系统,现在 研究linux下的KVM,能否将已经建立的virtualBox虚拟客户机(guest)转换为KVM虚 ...