2.1bash shell
bash 是乙個與bourne shell 相容的、執行從標準輸入裝置或檔案讀取的命令的命令語言直譯器(bash是具有很好的移植性的)
2.1.2 bash的改進
命令列編輯
命令列補全
不限制命令列歷史大小
不限制資料的大小
bash啟動檔案
符合條件表示式
目錄堆疊――訪問目錄的歷史記錄
限制性shell
bash posix(模式)
2.2shell在linux環境的角色
linux核心 作業系統核心
shell 為使用者提供乙個互動的介面
終端模擬器 使用者輸入命令螢幕回顯
linux桌面和視窗管理器 各種軟體應用程式的集合、包括檔案管理器、視窗管理器、終端模擬器。
2.2.1
與登入shell相關的檔案=互動式shell檔案
/etc/profile 系統級的初始化檔案,定義了一些環境變數,由於登入shell呼叫執行
/etc/bash.bashrc或者/etc/bashrc其檔名根據不同的linux發行版本而已,每個互動式shell(登入shell)的系統級的啟動指令碼,定義了一些函式和別名。
/etc/bash_logout 系統級的登入shell清理指令碼,當登入shell退出時執行,
$home/.bash_profile
$home/.profile
$home/.bash_login(帶點開頭都是隱藏檔案 避免新司機刪掉)
使用者個人初始化指令碼,由登入shell呼叫執行,只有乙個會執行,
$home/.bashrc 使用者個人的互動式shell啟動指令碼(home為家目錄 必須大寫)
$home/.bash_logout 使用者的清理指令碼
$home/.inputrc 使用者個人的由readline使用的啟動指令碼,定義了處理某些情況下的鍵盤對映
2.2.2bash啟動指令碼
當使用者登陸時,登入shell會調動的指令碼:
/etc/profile 當執行級別在3的時候登入系統會首先呼叫
/etc/profile.d 目錄當執行/etc/profile,會呼叫該目錄下一些指令碼
$home/.bash_profile $home/.bash_login $home/.profile 在/etc/profile執行後,第乙個存在的被執行
$home/.bashrc 上述指令碼全部執行之後,即呼叫此指令碼
/etc/bashrc 或者/etc/bash.bashrc由
$home/.bashrc呼叫執行
當乙個互動式的非登入shell啟動時
h oe
m/.b
ashr
c如果此
檔案存在
既被執行
/etc
/bas
hrc將
被hoem/.bashrc 如果此檔案存在既被執行 /etc/bashrc 將被
hoem/.
bash
rc如果
此檔案存
在既被執
行/et
c/ba
shrc
將被home/.bashrc呼叫執行
/etc/profile.d 此目錄下的指令碼將被
/etc/bashrc 或/etc/bash.bashr呼叫執行
bash啟動指令碼主要設定的環境
設定環境變數 path和ps1
通過變數 editor設定預設的文字編輯器
設定預設的umask(檔案或者目錄的許可權屬性)
覆蓋或移除一些不想要的變數和別名
設定別名
載入函式
2.2.4bash退出指令碼
功能:使用clean命令去清理終端的螢幕輸出
其次去移除一些臨時的檔案
自動執行一些命令或指令碼
2.2.5例項:定製乙個自己的bash退出指令碼
位置:$home/.bash_logout
2.2.6 有效的登入shell 的路徑
檢視shell檔案內容
#cat /ect/shells
#whcih bash
Shell學習筆記 第二天
1 顯示日期 date cal cal 2010 cal 2 2010 2 改變檔案擁有者 chown 3 改變檔案許可權 chmod 4 顯示當前目錄 pwd 5 檢視檔案尾部內容,並且檢視不斷更新的內容 tail tail f mycat.log 6 查詢檔案 find name filenam...
shell程式設計 第二天
ls l dir1 wc l 1。while 條件 do done test 2。until同上,僅僅是條件不成立的時候才執行 3。dev null unix 黑洞。用於清空檔案 cat dev null xx find name a.txt 2 dev null 4。注意 陷阱題之continue...
shell程式設計 第二天
1。while 條件 do done test 2。until同上,僅僅是條件不成立的時候才執行 3。dev null unix 黑洞。用於清空檔案 cat dev null xx find name a.txt 2 dev null 4。注意 陷阱題之continue跳出迴圈後,把列印的東東留在了...