2013-02-12 9 views
25

私はグローバルNPMパッケージjslintをインストールしているし、それはだからjslintが、実際にここにこのディレクトリから実行していないされていることをこの時点ではいかなる疑いもなく、ここで〜/ .npm dirは何ですか?

$ ls -la /usr/local/bin/jslint 
lrwxr-xr-x 1 lust admin 40 Feb 12 15:31 /usr/local/bin/jslint -> ../lib/node_modules/jslint/bin/jslint.js 

$ ls -la /usr/local/lib/node_modules/jslint/bin 
total 8 
drwxr-xr-x 3 lust staff 102 Apr 16 2012 . 
drwxr-xr-x 10 lust staff 340 Feb 12 15:31 .. 
-rwxr-xr-x 1 lust staff 2330 Apr 16 2012 jslint.js 

$ which jslint 
/usr/local/bin/jslint 

$ head -3 /usr/local/bin/jslint 
#!/usr/bin/env node 

var linter = require("../lib/linter"); 

に住ん:

$ ls -la .npm/jslint/0.1.9/package/bin/   
total 8 
drwxr-xr-x 3 lust staff 102 Apr 16 2012 . 
drwxr-xr-x 9 lust staff 306 Feb 12 15:31 .. 
-rwxr-xr-x 1 lust staff 2330 Apr 16 2012 jslint.js 

パッケージのコピーが2つあります.1つは/usr/local/、もう1つは~/.npmです。 .npmに1つの理由がありますが、それを削除するのは安全ですか?

答えて

61

~/.npmは、npmが同じパッケージを複数回再ダウンロードするのを避けるために使用するキャッシュです。それを取り除くことに害はない。コマンドで空にすることができます:

npm cache clean 
+0

優秀!ありがとうございます –

+0

これについて1つの質問で、 '' '$ npm cache clean'''を実行しようとしましたが、' 'エラー:EACCES、unlink'''というエラーが発生しました。それは管理者として行うことを示唆しています。たとえ$ sudo npmをインストールしても、すべてが私の家/ .npm dirにインストールされますか?そうであってはならない... – alexserver

+1

@alexserver '〜/ .npm'ディレクターの所有権を取り戻すために' chown -r'を使ってみて、 'npm cache clean'をもう一度実行してみましょう。 –

関連する問題