fishとは?
fish = friendly interactive shell. すなわち bash や csh などと同じ シェル の一種.
カラフルなカラーリング機能と便利なTAB補完機能、そしてコマンド履歴検索機能が非常に便利である.
fishの特徴
カラー表示
- 
コマンドの正誤をカラー表示
 - TAB補完リストもカラー表示
 
便利なTAB補完
- 
sudo の後にTAB補完
 - man の後にTAB補完
 - make, mount, ssh の後にTAB補完
 - オプション(-*)をTAB補完でリスト表示
 - apt-get などの後にTAB補完
 - ./configure – の後にもTAB補完
 - 環境変数をTAB補完
 
コマンド履歴検索
- 
始めの数文字だけ入力して↑キーを押すと履歴の中から、それらを含むものだけ順に出てくる
 
その他の特徴
- 
ディレクトリ名を入力すると、そこに cd する
 - ファイル・ディレクトリ名の大文字/小文字を認識しないシステムでは、適切に変換してくれる
例) Downloads というディレクトリに入りたいときに cd down [TAB] とすれば cd Downloads に変換
 - cd の履歴があり、prevdで一つずつ戻れる。メタキー+←キーでも戻れる。逆にメタキー+→キーで進む。
 - エラーメッセージが親切
 - fishの詳細なヘルプがブラウザで表示される
 - open コマンドを装備(open はGUI上でダブルクリックした時の動作をする)
 
fish を使う
- 
設定ファイルは  /.config/fish/config.fish
 - 自作コマンドは  /.config/fish/functions/ 以下に "コマンド名.fish" というファイル内に記述
 - set と打つと変数の一覧が表示
 - 環境変数の設定は "setenv 変数名 値"
 - 既存のコマンドをいじりたい時は/usr/local/share/fish/functions/コマンド名.fish などを /.config/fish/functions/ 以下にコピーしていじる。