萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> shell的startup文件講解

shell的startup文件講解

  1. 登錄非登錄和交互非交互式shell

  用戶登錄時(輸入用戶名密碼後)啟動的shell是登錄shell,登錄後仍可使用bash --login來啟動一個登錄shell

  用戶啟動shell用來解釋命令是交互式shell,啟動shell用來執行腳本是非交互時shell

  2.非交互式shell的startup文件定義在BASH_ENV變量裡,一般為空。

  3. 交互式登錄shell的startup文件是/etc/profile和依次查找~/.bash_profile, ~/.bash_login和~/.profile最先找到的那個。

  4. 交互式非登錄shell的startup文件是~/.bashrc。 通常會在~/.bash_profile(或其他兩個文件)中調用~/.bashrc

  測試的過程中發現父shell設置的alias不能傳遞到子shell裡。如果啟動非交互式shell以前設置的alias不能在腳本中使用。

  其實這也沒什麼大不了,使用source命令直接在原shell中執行就好了。


copyright © 萬盛學電腦網 all rights reserved