npmパッケージがグローバルにインストールされたかローカルにインストールされたかを確認する方法


153

Windows 7にgrunt、node、npm、bower、grunt-cliをインストールしています。

指示では、グローバルの-gフラグを指定してインストールコマンドを実行する必要があると記載されています。

インストール時に-gフラグを使用したかどうかを確認するにはどうすればよいですか?それらをアンインストールして再インストールするには、かなりの時間がかかります。

回答:


219

グローバルにインストールされているすべてのパッケージを表示listするには、-gフラグを指定してコマンドを使用します。

npm list -g

特定のパッケージがグローバルにインストールされているかどうかを確認するには、次のようにパッケージの名前(gruntこの場合)を指定できます。

npm list -g grunt

またはgrep、パッケージ名でフィルタリングするために使用できます。

npm list -g | grep grunt

出典:https : //docs.npmjs.com/cli/ls


4
「インストールされているかどうか」というブール値の場合 確認して、使用してみてください--depth。例:npm list --depth 1 --global csats-mturk > /dev/null 2>&1これは、より詳細な例です。
Adam Monsen、2015年

2
@AdamMonsen、私はアジサシのトップレベルのインストールを探していました。npm list --depth 0 --global ternアジサシがグローバルにインストールされているかどうかを確認していたnpm install -g tern
Sudhi

grep依存関係が満たされていないためにエラーでエラーが発生したnpmに関するコメントを考えると、かなり信頼できるソリューションのようです
myol

31
npm list --depth 1 --global packagename > /dev/null 2>&1

次に、終了ステータスをチェックして、インストールされているかどうかを確認できます。ありがとうアダムモンセン


3
ありがとう--depth 1!それが私が探していたものです。実際、私は今使っていますnpm list --depth 0 -g
revelt

何らかの理由で、パッケージがインストールされている場合でもインストールされていない場合でも、$?常に戻ります1
ケイティ

4
警告:パッケージがインストールされている場合でも、パッケージのいずれかに満たされていない依存関係があると、npmは常にエラーで終了します。@Kayvarこれがnpmが1を返す理由です。
コード化

17

特定のパッケージがグローバルにインストールされているかどうかを確認するには、次のコマンドを実行します。

npm list -g [package-name]

例として「うなり声」を取り上げましょう。グローバルにインストールされている場合は、次のように表示されます

C:\data\tryout\test1>npm list -g grunt
C:\Users\xxxxxxx\AppData\Roaming\npm
└── grunt@0.4.5

グローバルにインストールされていない場合は、次のように表示されます

C:\data\tryout\test1>npm list -g grunt
C:\Users\xxxxxxx\AppData\Roaming\npm
└── (empty)

特定のパッケージがローカルにインストールされているかどうかを確認するには、上記と同じコマンドを実行できますが、-gパラメーターはありません。

ソース:npmパッケージがグローバルにインストールされたかローカルにインストールされたかを確認する方法


6

次のコマンドを使用して、すべてのグローバルパッケージを一覧表示できます。

npm ls -g

または、次のコマンドで特定のパッケージを確認します。

npm ls -g [package-name] 

例えば: npm ls -g @angular/cli


1

Windowsでは、次のコマンドを使用して、パッケージがインストールされているかどうかを確認します。詳細は画像をご参照ください。

npm list -g | find "create"

サンプル結果


0

あなたのパッケージから sindresorhus/is-installed-globally

https://github.com/sindresorhus/is-installed-globally

使用法:

const isInstalledGlobally = require('is-installed-globally');

// With `npm install your-package`
console.log(isInstalledGlobally);
//=> false

// With `npm install --global your-package`
console.log(isInstalledGlobally);
//=> true

ビルド済みのファイルをパッケージと一緒に配布する必要があるときに、これが便利であることがわかりました。配布ファイルを使用してnpmパッケージを公開するにはどうすればよいですか。このパッケージを使用すると、インストールがローカルかグローバルかを確認し、次に示すように、ローカルインストールに相対パスを使用できます

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.