bash定製使用者環境的所提供的四個最重要的特性:特殊檔案(.bashrc, .bash_profile《最重要的》, .bash_logout, /etc/profile《前面三個檔案不存在時使用》),別名,選項和變數。
.bash_profile在shell登入時呼叫;在gnome桌面環境中,只有在使用相應的使用者登入時使用者主目錄下的此檔案才會執行,而不是開啟終端視窗時執行,開啟終端執行的是.bashrc檔案。(舉一反三:所有主目錄下的.*rc檔案都是相關程式啟動時執行的。如:.vimrc)。
export命令的作用是把變數的定義匯出給子shell使用。也可以理解為定義環境變數。環境變數是指對所有程序可見的的變數。只有環境變數對所有子程序可用。
source命令作用是在當前shell環境下讀取並執行檔案,可用「.」代替。如果沒有直接執行的話是在子shell環境中執行檔案。
.bash_login, .profile和.bash_profile是相同意義的檔案都是在登入時使用,只是其他兩個檔案是別的shell定義的,在bash中相容而已。他們三個檔案只有乙個會被讀取順序是.bash_profile->.bash_login->.profile。
.bashrc檔案在啟動新shell時會被呼叫。
.bash_logout是和.bash_profile正好相反的在登出時執行。
別用最常用的領域是對長命令取別名以減少輸入注意「=」後面的命令要放在單引號裡。別名可以遞迴即定義別名的別名;別名中不能含有萬用字元如a*b=『cd ~』是錯誤的別名定義方法;別名只能用於命令字串的開始(某些情況下會有例外)。
取變數的語法$varname實際上是標準語法$的縮寫。
path變數最好是在目錄後面新增,不要新增在前面。因為bash是按目錄出現的順序查詢命令,如果你的命令和系統原有的重名,會導致系統的命令被遮蔽掉。
cdpath是指定cd命令查詢目錄的變數。預設的cd命令是在當前目錄下查詢引數目錄。
pwd變數指定當前目錄取值即為pwd命令的輸出。
環境變數是指對所有程序可見的的變數。
varname=value command使某個變數僅對某個命令有效。
在bash中執行命令的實質是以bash為父程序,啟動子程序,在子程序中執行命令。
程式設計珠璣(第二版)讀書筆記 1 2
問題 乙個檔案f,包含最多1000萬條無序的 不重複的記錄,每條記錄都是乙個7位的十進位制正整數,利用1mb左右的記憶體空間,按照整數的大小對檔案進行公升序排序,將結果儲存到檔案fo中。分析 1mb記憶體,共有1024 1024 8 8388608bit,如果每個正整數採用32位二進位制儲存,可以存...
《你的燈亮著嗎》 第二版 讀書筆記
有些人很可悲,他們無休止的在各種候選定義之間猶豫不決,永遠不能聚集足夠的勇氣去解決問題,因為他們不願承擔定義失誤的風險。事實上,我們不可能給自然的 日常的問題做出乙個惟一的 只有一種結果的 完合清晰明確的定義。問題其實就是你期望的東西和你體驗的東西之間的差別。幻覺中的問題是真正的問題。如果你想找到乙...
UNIX環境高階程式設計第二版 讀書筆記5章
5.1 標準i o由dennis ritchie在1975年左右編寫。5.2 第三章的i o都是針對檔案描述符。而標準i o庫是圍繞stream,開啟或建立檔案時,我們已經使乙個stream與檔案相關聯。stream的定向決定了讀寫的字元是單字元還是多位元組。在未定向的流上使用i o函式可以改變定向...