Help us understand the problem. What is going on with this article?

npm よく使うコマンドまとめ

More than 1 year has passed since last update.

対象

Windows系ですがほとんど同じです。
パス記号の記載とかです。


用語

npmとは

node.js のパッケージマネージャーで、モジュールというかパッケージというか JavaScriptの便利ライブラリのインストールをコマンドで行えるもの。


node_modules フォルダ

カレントディレクトリ配下にあり、カレントディレクトリにインストールされるモジュールの中身が配置されるフォルダ。


package.json

カレントディレクトリ配置されるファイル。package.jsonにはインストールするモジュールを記入することができる。

このファイルがあるおかげで、node_modulesの中身はGitなどに登録しなくても開発環境の移行が用意になる。


コマンドオプション

npm のコマンドラインオプションには、長いオプション指定を短くするエイリアスが多数あるのでよくわけわからなくなるので併記しておく。

バージョン取得

> npm -v
5.6.0
> npm -version
5.6.0

初期化

カレントディレクトリにpackage.jsonを作成する。
package.jsonにはインストールするモジュールを記入したりできる。

> npm init

このコマンドを入力するとプロジェクト名やバージョンなどを聞かれるので答えていくとpackage.jsonが作成される。
質問項目される項目は次のとおり

package name: (test)
version: (1.0.0)
description:
entry point: (index.js)
test command:
git repository:
keywords:
author:
license: (ISC)

全てEnterを押して次の項目に進むことができる。package name には、その時のカレントディレクトリの名前が入る。

最後にこの内容で書き込んでよいか、と聞かれるので、yを入力する。

About to write to C:\...\package.json:
{
  "name": "test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC"
}
Is this ok? (yes) y
>

Enter や y の入力がめんどくさいので、次のコマンドでは問い合わせなしに、package.json を作成することができる。

> npm init -y
> npm init -yes

パッケージインストール

package.json の内容に従ってインストールするには次のコマンドを使う。これはすでにpackage.json の中身にインストールするべきパッケージ名が書かれている場合に使うので環境移行のときに使うコマンド。

> npm install
> npm i

次のコマンドは、カレントディレクトリに指定のパッケージをインストールする。カレントフォルダの配下のnode_modulesフォルダに配置される。

> npm install パッケージ名
> npm i パッケージ名

コマンドがインストールされる場合はnode_modules\.bin\ に配置されるので、カレントディレクトリからは次のように指定することでローカルのコマンドが呼び出せる。

> .\node_modules\.bin\コマンド

次のコマンドでは、カレントディレクトリに指定のパッケージをインストールするときに package.json の dependencies欄 にパッケージ名が記録される。

> npm install --save パッケージ名
> npm install -save パッケージ名
> npm install -S パッケージ名

次のコマンドでは、カレントディレクトリに指定のパッケージをインストールするときに package.json の devDependencies欄 にパッケージ名が記録される。

> npm install --save-dev パッケージ名
> npm install -D パッケージ名

パッケージインストール グローバル

次のコマンドでは、グローバルにパッケージをインストールする。コマンドをインストールした場合はパスを指定しなくてもどのディレクトリでも動くようになる。

実際にどこに配置されているかはよくわからない。よくわからなくても使えるから大丈夫。

> npm install -g パッケージ名
> npm install --global パッケージ名

グローバルインストールの場合には、--saveオプションは無効になる。


パッケージアンインストール

次のコマンドでは、カレントディレクトリにインストールしたパッケージをアンインストールする。

> npm uninstall パッケージ名
> npm un パッケージ名
> npm unlink パッケージ名
> npm remove パッケージ名
> npm rm パッケージ名
> npm r パッケージ名

次のコマンドでは、アンインストール時に package.json の dependencies欄の記述も削除する。

> npm uninstall --save パッケージ名

同様に、次のコマンドでは、アンインストール時に package.json の devDependencies欄の記述も削除する。

> npm uninstall --save-dev パッケージ名
> npm uninstall -D パッケージ名

パッケージアンインストール グローバル

次のコマンドでは、グローバルインストールしたパッケージをアンインストールすることができる。

> npm uninstall -g パッケージ名

パッケージインストールリスト

次のコマンドでは、カレントディレクトリにインストールされているモジュールの一覧を出力することができる。

> npm list

次のコマンドでは、グローバルインストールされているモジュール一覧を出力することができる。

> npm list -g

参考

勉強メモ/npmの使い方(node.js=v0.11.16, npm=2.3.0, 2015-03時点) - Qiita
https://qiita.com/msakamoto_sf/items/a1ae46979a42d6948ebd

npmのuninstallコマンドを忘れがちなのでメモ - Qiita
https://qiita.com/mamo/items/6f1cf71ccd82216fe25b

僕がnpm installに-gをつけないわけ - Qiita
https://qiita.com/Mic-U/items/cd456d6bea72937464f8

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした