Bashを起動し、ターミネータを使用してFishを自動的に起動します。

Bashを起動し、ターミネータを使用してFishを自動的に起動します。

私はターミネーターを使ってきましたが、最近は魚を使い始めました。ターミネータが起動したら(bash)、例えばまともにnode使用できます。釣りを始めても、まだ上手くnode走ることができます。

この場合、ターミネータを「シェルの代わりにカスタムコマンドを実行」に設定しましたが、fishこれ以上実行できませんnode。端末にはまだインストールされていないと表示されます。何が問題なのか、ある程度理解しています。すべてがうまく機能するfishことから始めればbash…言葉になるようです…

fishbashがすでに機能するように自動起動するにはどうすればよいですか?

(もちろん、私が何を言っているのかよくわかりません。だからGoogleを通して解決策を見つけることができないようです...)

答え1

症状の説明によると、nodeシステムのデフォルトのコマンド検索パスの外側にインストールされているようです。ここには何の問題もありません。PATH環境変数に場所を追加するだけです。あなたが間違っているのは次のとおりです。間違ったファイルでやっているのです。

残念ながら、多くのチュートリアルではPATHこれを設定するように指示します.bashrc。これはすでに知っているように間違っています。これにより、bashの対話型インスタンスを介してプログラムを起動したときにのみ設定を使用できます。通常、環境変数を設定しないでください。代わりに.bashrc、ログイン時にセッションの開始の一部としてロードされるファイルに環境変数を設定してください。~/.profileすべてのシェルが読める「.bashrc」に対応するファイルはありますか?そして環境変数を恒久的に設定する方法

したがって、解決策は、追加PATHした変更を削除し~/.bashrc(手動でまたはいくつかのインストールスクリプトを実行して)、次の行を入力することです~/.profile

現在のセッションに変更を適用するには、ウィンドウマネージャで環境を変更する必要があります。これはウィンドウマネージャで起動される将来の端末に影響を与えます(既存の端末には影響を与えません)。これを行う方法は、ウィンドウマネージャによって異なります。

答え2

なぜ私はbashを最初に始めてから、あなたがfishを始めたのかわかりません。 Fishが使用するシェルの場合、デフォルトのシェル「chsh -s /usr/local/bin/fish」に設定し、まれにbashコマンドを実行したい場合、または実行する必要がある場合は、「bash」と入力するとbashシェルに入ります。 、作業が終わったら、「exit」と入力して釣りに戻ることができます。

このコンテンツの詳細については、次をご覧ください。https://github.com/fish-shell/fish-shell#switching-to-fish

関連情報