0
私はシステム上でnpm
パーミッションを修正する単純なbashファイルを持っています。これは次のようになりますローカルコンピュータで動作しているが、Amazon EC2インスタンスで動作していないBashファイル
npm=`npm config get prefix`
echo "$npm"
if [[ $npm = "/usr/local" ]]
then
echo "Yes it's /usr/local"
echo $npm/{lib/node_modules,bin,share}
sudo chown -R $(whoami) $npm/{lib/node_modules,bin,share}
echo "Complete"
elif [[ $npm = "/usr" ]]
then
echo "Uhhohh it's /usr gotta use a different method"
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
export PATH=~/.npm-global/bin:$PATH
source ~/.profile
echo "No"
fi
npm install -g forever
npm install -g pm2
npm install -g bower
これは私のマシンで正常に動作します。しかし、私のamazon ex2インスタンスではありません。私は自分のAWS EC2インスタンスでUbuntu 16.04 LTSを実行しており、ローカルシステムでUbuntu 15.04を実行しています。私が得るエラーはnpm-permission.sh: line 2: =/usr: No such file or directory
2番目の行です。どうした?それはなぜ機能しないのですか?
これを最初の行で試してください: 'npm = $(npm config get prefix)' – Cyrus
サイドノート:$ npmは空であるようです。この場合、if節を '[" $ npm "="/... "]]'に変更して失敗しないようにする必要があります。 – MrTux
@Cyrusこれはうまくいった...あなたは答えとしてそれを置くことができますか?私はそれをマークすることができるように。 –