日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

對話 UNIX: 第 10 部分,定制您的 Shell( 二 )


Shell 啟動腳本 可以提供這種持久性 。在 Shell 啟動和終止時,將執(zhí)行一系列腳本,以便初始化和重新設(shè)置您的環(huán)境 。有些啟動腳本是系統(tǒng)范圍的(由您的系統(tǒng)管理員來配置它們),而其他的一些腳本,您可以根據(jù)需要進(jìn)行自定義 。
啟動腳本與微軟的 甒indows?中的 INI 文件有所不同 。顧名思義,啟動腳本是真正的 Shell 腳本,即為實(shí)現(xiàn)某些工作而編寫的小程序 。在這種情況下,無論何時啟動或終止 Shell,都將運(yùn)行這些 Shell 腳本,并對 Shell 環(huán)境產(chǎn)生影響 。
由此開始!
通常,每種 Shell 都提供了一些 Shell 啟動腳本,并且每種 Shell 都規(guī)定了腳本運(yùn)行的順序 。一般情況下,至少提供了一個系統(tǒng)范圍的啟動文件和一個個人(每個用戶的)的啟動文件 ??梢詫⒄麄€ Shell 啟動序列看作一種層疊的方式:運(yùn)行(潛在地)多個腳本,其效果是累積的,并且您可以在后續(xù)的腳本中否定或者改變序列中以前的參數(shù)設(shè)置 。
【對話 UNIX: 第 10 部分,定制您的 Shell】例如,您的系統(tǒng)管理員可能在系統(tǒng)范圍的 Shell 啟動文件中為整個系統(tǒng)設(shè)置了一個很有幫助的缺省 Shell 提示符,例如,包括您的用戶名、當(dāng)前工作目錄和命令歷史編號 。然而,通過在自己的啟動腳本中,根據(jù)您的喜好重新設(shè)置 Shell 提示,您可以覆蓋這個文件 。否則,如果您不改變系統(tǒng)范圍的設(shè)置,那么它會在您的 Shell 和環(huán)境中生效 。
通常,最先執(zhí)行的啟動腳本是系統(tǒng)范圍的,如 /etc/profile,并且由您的系統(tǒng)管理員對它們進(jìn)行管理 。系統(tǒng)范圍啟動文件的目的不是干擾您的工作環(huán)境,而是簡化系統(tǒng)特定資源的使用 。例如,如果您的系統(tǒng)管理員堅持讓您使用安全 Shell(SSH)實(shí)用工具的更新的版本,因?yàn)樵鹊陌姹敬嬖诒娝苤陌踩毕?,他或者她可能將每個用戶的初始 PATH 變量設(shè)置為 /usr/local/bin:/bin:/usr/bin,這樣一來,將優(yōu)先執(zhí)行在 /usr/local/bin 中找到的可執(zhí)行文件 。(如果在 /usr/local/bin 中沒有找到該命令,Shell 將在 /usr/bin 中繼續(xù)查找 。)系統(tǒng)范圍的啟動文件也可用于命名打印機(jī),顯示關(guān)于計劃停機(jī)的公告,并為新用戶提供合理的 Shell 缺省值 。(這樣就不會把新手給弄糊涂了 。)
在運(yùn)行了系統(tǒng)范圍的腳本之后,Shell 將運(yùn)行用戶特定的啟動腳本 。這些腳本文件非常適合保存您最喜歡的別名、環(huán)境設(shè)置和其他首選項(xiàng) 。
為 Bash 做好準(zhǔn)備
對于不同的 Shell,啟動腳本的個數(shù)和名字也有所不同 。讓我們來看看 Bash Shell(/bin/bash)的啟動順序 。Bash Shell 建立于 Unix 和 Linux?之上,并且 Bash Shell 通常是新的系統(tǒng)和用戶的缺省 Shell 。它也是許多其他 Shell 的代表,因此在這里可以將它作為一個很好的示例 。(如果您使用的是另一種 Shell,可以參考它的文檔或者手冊頁面,以獲取關(guān)于它的啟動腳本名字和處理順序的信息 。)
Bash 將搜索六 個啟動腳本,但是所有這些腳本都是可選的 。即使這六個腳本都存在并且可讀,但是在任何情況下,Bash 僅執(zhí)行這六個腳本的一個子集 。
如果 /etc/profile 存在并且可以由該用戶進(jìn)行讀取,那么 Bash 將首先執(zhí)行它,這是系統(tǒng)范圍的啟動文件 。在讀取了這個文件之后,Bash 按照順序?qū)ふ?~/.bash_profile、~/.bash_login、~/.profile 和 ~/.bashrc,其中 ~ 是表示該用戶 home 目錄的 Shell 縮寫(也可以表示為 $HOME) 。如果您退出 Bash,那么 Shell 將查找 ~/.bash_logout 。
究竟執(zhí)行這六個文件中的哪些,這取決于新的 Shell 的“模式 。Shell 可以是登錄 Shell,是或者不是交互的 。(登錄 Shell 也是一種交互的 Shell;然而,您可以強(qiáng)制非交互的 Shell 按照登錄 Shell 的方式工作 。稍后將詳細(xì)介紹這一內(nèi)容 。)

推薦閱讀