Shell
歴史
Unix は 1969 年 AT&Tの ベル研究所で誕生しました。継続していく開発の中で BSD 系 と呼ばれる分岐が生まれました。本流は最終的に System V 系と呼ばれるようになりました。その Unix の開発の過程で多数のコマンドが生まれ Unix はより便利になっていきました。しかし互換性をそれほど重視していなかったためかコマンドを含む Unix は移植性が低下していきました。そこで生まれたのが POSIX です。1988 年にシステムインターフェースが、1992 年にシェルとコマンドが標準化されました。
BSD系コマンド
Linux系コマンド
ログイン時に表示されるメッセージをカスタマイズする
- ログイン直後のメッセージ /etc/motdの内容が表示される(「Message Of The Day」の略)
ログインシェルとインタラクティブシェルの違い
これらの言葉は曖昧に使用されている面もあると思います。あくまでも参考程度。 Shellではシェルを何個も起動することが可能。 その中でユーザがログインした後、最 初に起動されるシェルがログインシェル、ログインシェルから起動されるシェルでユーザと対話が可能なシェルをインタラクティブシェルと呼ぶ。
ただしbashでは?(他のShellでもいけるかも)オプションにより2個目以後のログインシェルを起動させることが可能 これらは環境変数や呼ばれる初期化シェルが大きく違うため、違いを把握しておくことは重要
interactiveとは "相互作用、対話的"という意味
bash 起動時に読み込まれるファイル群
bashだと
-
ログインシェルで起動されるファイル /etc/profile ~/.bash_profile ~/.bash_login ~/.profile (多くのディストリビューションでは ~/.bash_profileから ~/.bashrcを呼び出す)
-
インタラクティブシェル ~/.bashrc
(多くのディストリビューションでは ~/.bashrcからbashrcが呼び出される)
zsh 起動時に読み込まれるファイル群
Shellを変える 際の正しい対応
シェルを変える際はバックアップ用のセッションを残しておくなどして、ログインできなくならないよう慎重に作業をする。
他環境へのdotfiles移行について
- まずはdotfilesを作成しているShellに合わせる必要がある(管理主はzsh)
dotfiles
参考URL dotfilesとはとはLinuxやmacOSにおける設定ファイルのこと。