0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

bash の起動時に読み込まれるファイルたち

Last updated at Posted at 2018-05-11

はじめに

man bash 1のINVOCATIONのところを簡単にまとめただけです。
バージョンはGNU Bash 4.3です。(4.3と4.4でも違いはあるみたい)

bashの起動モード

  • ログインシェル (-bash or bash --loginで起動)
  • インタラクティブシェル (-i で起動もしくは次のいずれかを満たして起動)
    • 引数なし
    • -c COMMAND オプションなし
  • shシェル (shとして起動)
  • POSIXシェル (--posixで起動)

ログインシェルとインタラクティブシェルは直交する。
shシェル、POSIXシェルのモードは今回省略する。

ログインシェルの場合

起動時

  1. /etc/profile
  2. ~/.bash_profile, ~/.bash_login, ~/profileのいずれか(この順で探索)

--noprofileによりこれらは読み込まれなくなる。

終了時

  1. ~/bash_logout

ログインシェルでない場合

インタラクティブシェルの場合

  1. /etc/bash.bashrc
  2. ~/.bashrc

--norcによりこれらは読み込まれなくなる。
--rcfile FILEによりこれらの代わりにFILEを読み込む。

インタラクティブシェルでない場合

$BASH_ENVで指定されたファイルが読み込まれる。

リモートから(rshdまたはsshdによって)起動された場合

  1. /etc/bash.bashrc (manには~/.bashrc and ~/.bashrc と書いてあるが前半は誤植)
  2. ~/.bashrc

ちなみに4.4だと~/.bashrcだけが書いてあるが未検証。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?