SSH経由アクセスの時に~/.bashrcが読み込まれるけど
冒頭に以下の記述があるので
[[ $- != *i* ]] && return (環境によって記述内容が違う?)対話的に実行、していない場合は何もしない
つまり、非対話的実行の場合は何もしないでねということを予め記述している
~/.bashrcに設定を追加する時は末尾に記述するのが一般的だけど、その設定を非対話的実行でも有効にする場合 [略& return の部分よりも前の行に記述する。
おまじない
# If not running interactively, don't do anything
case $- in
*i*) exec fish;;
*) return;;
esac
条件分岐
対話的実行の場合 fish を実行
非対話的実行の場合は何もしない
噛み砕いてなんとなく理解できるようになってきましたが、まだこの辺はわからない部分が多いです