Zshは一部のCLIを認識しません

Zshは一部のCLIを認識しません

端末にスタイルと便利な機能を適用するために Zsh / oh-my-zsh をインストールしたのですが、うまく動作しません。

私がやったことは次のとおりです:

sudo apt install zsh

そして、次のようにして oh-my-zsh をクローンしました:

git clone https://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh

以下を使用して zsh 構成を作成しました:

cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc

最後に、デフォルトのシェルを に変更しましたchsh -s /bin/zsh

結局、毎日のようにターミナルを使用しようとしましたが、npmたとえば、は zsh では動作せず、bash でのみ動作します。

ここに私が言っていることを印刷したものを示します:

プリントスクリーン

zsh から bash に切り替えると、すべてが正常に動作していることがわかります。そして、zsh に戻って作業を続行します。

しかし、ターミナル (zsh 内) を開いて npm バージョンを試すと、次のようになります。

では、どうすればこれを修正して、まったく気にせずに zsh を使用できるのでしょうか?

Ubuntu 18.04 LTS を使用しています。

答え1

npmは、$PATH に含まれていないため、zsh では動作しません。これは、Ubuntu リポジトリからのものではないためです。bash で実行するとwhereis npm、にインストールされていることがわかります/home/gabriel/.nvm/versions/node/v10.15.3/bin/npm。これは、どこかからダウンロードし、bash 構成を更新したことを意味します。(おそらく~/.bashrcファイル)このローカルインストールを$PATHに追加します。この部分を~/.zshrc (その行をコピーして貼り付けるだけで済みます。zsh は bash と互換性があります)行は次のようになります。

export PATH=$HOME/.nvm/versions/node/v10.15.3/bin/npm:$PATH

ただし、このローカル npm バイナリを更新すると、そのv10.15.3部分が変更されることに注意してください。そのため、最新の npm バイナリへのシンボリック リンクを使用することをお勧めします。

関連情報