2 學習 shell 的緣由主要有:命令行模式的 shell 在各大 Linux 發行版都同樣;遠程管理時命令行模式速度較快;shell 是管理 Linux 系統很是重要的一環,由於 Linux 中不少管理命令都是以 shell編寫的。shell
3 操做系統合法的 shell 均寫在/etc/shells 文件中。vim
4 用戶默認登陸取得的 shell 記錄於/etc/passwd 的最後一個字段。bash
5 bash 的功能主要有:歷史命令、命令與文件補全功能、命令別名設置功能、任務管理、前臺後臺控制、程序化腳本、通配符。ide
6 type 能夠用來找到執行命令爲什麼種類型,亦可用於與which相同的功能。變量就是以一組文字或符號等,來替換一些設置或是一串保留的數據。變量主要有環境變量與自定義變量,或稱爲全局變量與局部變量。學習
7 使用env 與export 可觀察環境變量,其中export 能夠將自定義變量轉成環境變量。 set 能夠觀察目前bash環境下的全部變量。操作系統
8 $?亦爲變量,是前一個命令執行完畢後的返回值,在Linux返回值爲0表明執行成功 locale 可用於觀察語系數據。命令行
9 可用 read 讓用戶由鍵盤輸入變量的值。3d
10 ulimit 可用以限制用戶使用系統的資源狀況。blog
11 bash 的配置文件主要分爲 login shell 與 non-login shell, login shell 主要讀取/etc/profile與~/.bash_profile、non-login shell 則僅讀取 ~/.bashrc。排序
12 在使用 vim 時,若不當心按了ctrl+s則畫面會被凍結,你可使用ctrl+q 來解除。
13 通配符主要有:*、?、[ ]等。
14 數據流重定向經過 >、2>、<之類的符號將輸出的信息轉到其餘文件或設備中連續命令的執行可經過;&&||等符號來處理。
15 管道命令的重點是:管道命令僅會處理標準輸出,對於標準錯誤會予以忽略、道命令必需要可以接受來自前一個命令的數據成爲標準輸入繼續處理才行
16 本章介紹的管道命令主要有:cut、grep、sort、wc、uniq tee、tr、col、join、paste、expand、split、xargs 等。
type
echo
顯示變量的內容
設置變量
環境變量的功能
env:觀察環境變量
PS1提示字符的設置
read: 由用戶鍵盤輸入變量的值
ulimit:可用以限制用戶使用系統的資源使用狀況
History:歷史記錄
history幫助執行功能
路徑與命令查找順序
數據流重定向
管道命令
選取命令cut、grep
cut
grep
sort排序
uniq重複數據僅列出一個,加-c是計數
wc計算文件輸出信息的總體數據
雙向重定向tee
字符轉換命令
tr:刪除或替換文字信息
-d:刪除
-s:替換,默認狀態是-s
col -x :將tab按鍵替換爲空格
join :兩個文件中,有相同數據的一行,纔將它加在一塊兒
paste :將兩行貼在一塊兒,且中間用tab鍵隔開,-d後面能夠接分隔字符,默認是tab
- :若是file部分寫成-,表示來自標準輸入的數據的意思。
expand:將tab轉成空格鍵
split:將大文件依據大小(-b)行數(-l)劃分爲小文件
xargs:產生某個命令的參數
減號-使用前一個命令的stdout