私はgulp(globally)をインストールしましたが、このコードを実行したために動作したようです:
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected])
しかし、gulp
と入力すると、-bash: gulp: command not found
と表示されます
何が起こっているのでしょうか?
Npmが間違ったディレクトリにインストールされたため、次のコードを実行して「npm config prefix」を変更する必要がありました。
npm config set prefix /usr/local
次に、gulpを(-gパラメーターを使用して)グローバルに再インストールしましたが、正常に機能しました。
この記事は、私が解決策を見つけた場所です。 http://webbb.be/blog/command-not-found-node-npm
質問がなぜ投票されたのかはわかりませんが、同じ問題があり、ブログの投稿に従って問題を解決することをお勧めします。私が追加すべきことの1つは、私の場合、実行した後です:
npm config set prefix /usr/local
npm root -g
が/usr/local/lib/node_modules/npm
を指していることを確認しましたが、/usr/local/lib/node_modules
にgulp
をインストールするには、Sudo
を使用する必要がありました。
Sudo npm install gulp -g
tcsh
(Mac OS Xでのデフォルトのシェル)を使用している場合は、おそらくインストールが完了した直後にシェルにrehash
と入力する必要があります。
npm install -g gulp
すぐに続く:
rehash
そうでない場合、gulp
を初めてインストールする場合、シェルは新しい実行可能ファイルがインストールされていることを認識しない可能性があります。そのため、新しいシェルを起動するか、現在のシェルでrehash
と入力する必要があります。
(これは基本的に、グローバルにインストールするコマンドごとに1回限りです。)
これは古いスレッドであることに気づきましたが、Future-Meおよび後世のために、「nudoをSudoとして実行する」ディスカッションに2セントを追加する必要があると考えました。 免責事項:Windowsは使用していません。これらの手順は、仮想マシンと物理マシンの両方の非Windowsマシンでのみ実証されています。
パーミッションをnpmのデフォルトディレクトリに変更することにより、Sudoを使用する必要を回避できます。
Sudo
なしでnpmを実行するためにアクセス許可を変更するnpm config get prefix
/usr/local
です/usr
または/Users/YOURUSERNAME/node_modules
または/Something/Else/FishyLooking
ですnpm config set prefix /usr/local
Sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}
これで、Sudo
なしでnpm <whatever>
を実行できるはずです。 注:これらの変更を有効にするには、ターミナルの再起動が必要になる場合があります。
私は次の手順を実行して同様の問題がありましたが、それは機能しました。
1.npm config set prefix/usr/local
2. sudo chown -R $(whoami)$(npm config get prefix)/ {lib/node_modules、bin、share}
この2つのコマンドはnpmパスを正しく設定し、npmでSudoを使用する必要がなくなります。次にgulpをアンインストールします
npmアンインストールgulp
Sudoなしで再度gulpをインストール、npm install gulp -g
これは動作するはずです!!
インストール後に「コマンドが見つかりません」という問題が発生しましたが、上記のソリューションで説明したように/ usr/localにインストールされました。
私の問題は、Sudoを使用してインストールを実行したことが原因のようです。私は次のことをしました。
これを行う必要がありますnpm install --global gulp
。それは私のために機能し、私もこの問題を抱えていました。これは、このパッケージをグローバルにインストールしなかったためです。
私の場合、npm installの前にSudoを追加すると、gulpコマンドが見つかりません問題
Sudo npm install
プレフィックスをそのまま残したい場合は、bin dirをPATH変数にエクスポートするだけです:export PATH=$HOME/your-path/bin:$PATH
この行を$ HOME/.profileに追加し、入手しました。
プレフィックスを/usr/local
に設定すると、Sudo
が使用されるため、ユーザーディレクトリに含める必要があります。プレフィックスはnpm prefix -g
で確認できます。
上記および他の場所からの回答の組み合わせを使用して、Win10でこれを動作させました。他の人と将来の私のためにここに投稿しています。
ここからの指示に従いました: https://gulpjs.com/docs/en/getting-started/quick-start しかし、最後のステップgulp --versionと入力すると、メッセージが表示されます-bash:gulp:command not found
これを修正するには:
また、gulpをグローバルにインストールしない理由とそれを削除する理由のために以下を見つけました(ただし、これが推奨されるかどうかはわかりません):