fish
ターミナルを起動するたびに再入力するのは好きではありません。デフォルトでFishをオンにしたい。Mac で Fish シェルをデフォルトのシェルとして設定するにはどうすればよいですか?
18 に答える
1. sudo nano /etc/shells
2. シェルのリストに /usr/local/bin/fish を追加します
3. chsh -s /usr/local/bin/fish
chshを使用して、ユーザーのシェルを変更できます。
たとえば、シェルを Zsh に変更するには、次のコードを実行します。
chsh -s /bin/zsh
マンページと Lorin で説明されているように、シェルが OS に認識されていない場合は、既知のリストに追加する必要があります/etc/shells
。
これを行う別の方法は次のとおりです。
MacPortsでインストールしたと仮定すると、次のようにして実行できます。
sudo port install fish
シェルは にあります/opt/local/bin/fish
。
これが有効なシェルであることを OS X に伝える必要があります。これを行うには、このパスをファイルの末尾に追加し/etc/shells
ます。
これが完了したら、System Preferences → Accountsに移動してシェルを変更できます。ロックをクリックして変更を許可します。アカウントを右クリックし、[詳細オプション... ] を選択します。[ログイン シェル]フィールドに、Fish へのパスを追加します。
Terminal.app → Preferences → General → Shells open with → /bin/fish
- ターミナルを開き、command+ ,(コンマ) を押します。これにより、設定ウィンドウが開きます。
- 最初のタブは「一般」です。
- 「Shells open with」設定を見つけて、シェルへの完全なパスが必要な 2 番目のオプションを選択します。
- 通常は/usr/local/bin/fishである fish コマンドへのリンクを貼り付けます。
zsh
がデフォルトとして設定されているこのスクリーンショットを参照してください。
macOS v10.12 (Sierra)を使用しています。また、macOS v10.14 (Mojave) でも動作します。
私にとってうまくいったのは、これらすべての方法の組み合わせだけでした。
/etc/shells
最初に、Fish 実行可能ファイルへのパスをファイルに追加する必要がありましたそれから私は走った
chsh -s /usr/local/bin/fish
最後に、Command+と入力して、そこにあるデフォルトのパスに,追加しました
/usr/local/bin/fish
3 つすべてを行った後で初めて、Fish が新しいターミナル ウィンドウのデフォルトとしてポップアップし始めました。
macOS v10.14 ( Mojave) では、次のことを行う必要がありました (例としてZ シェル( zsh
) を使用)。
brew install zsh
sudo sh -c "echo $(which zsh) >> /etc/shells"
chsh -s $(which zsh)
これは、 Mac OS X v10.12 (Sierra)の新規インストールで機能します。
このchsh
プログラムでは、デフォルトのシェルを変更できます。実行可能ファイルへのフルパスが必要になるため、シェルが Fish の場合は、入力したときに出力を提供する必要がありますwhich fish
。
" " で始まる行が表示されますShell:
。編集したことがない場合は、おそらく " Shell: /bin/bash
" と表示されます。/bin/bash
そのパスを目的のシェルへのパスに置き換えます。
で、+Terminal
を使用して端末設定を開きます。Command,
[全般] タブで、 :を: にShells open with
変更し、使用するDefault login shell
Command
/bin/fish
使用dscl
:
heimdall:~ leeg$ dscl
Entering interactive mode... (type "help" for commands)
> cd /Local/Default/Users/
/Local/Default/Users > read <<YOUR_USER>>
[...]
UserShell: /bin/bash
/Local/Default/Users >
その値を変更するだけです ( の書き込みコマンドを使用dscl
)。