這篇文章記錄bash shell的相關命令
關於變數:管道命令:以「|」為界定符號,用來處理前乙個命令傳來的正確資訊變數設定規則:
1. 變數與變數內容用乙個等號連線,「變數名=變數內容」
2. 等號兩邊不能直接接空格
3. 變數名稱只能是英文本母與數字,但開頭不能是數字
4. 變數內容若有空格符可用雙引號或單引號將變數內容結合起來(單引號內的特殊字元僅作為一般字元(純文字);雙引號內的特殊字元,如$等,可以保持原有特性)
5. 可用轉義字元(\)將特殊符號變成一般字元。
6. 一串命令中,需要其他命令提供資訊時,可以使用反單引號(`(主鍵盤區數字鍵1左邊的那個鍵))`命令`或者$(命令)。注意與下述變數名部分的${}區分。
7. 可用「$變數名稱」或「$」來進行變數內容累加。如path="$path":/home/bin (注意雙引號)
8. 若變數需要其它子程序執行時,需要export來使變數變成換進變數
9. 通常以大寫字母作為變數名。
「echo 變數名」:輸出變數內容,當輸出結果為空時,可能是沒有這個變數,也可能是這個變數為空字串
「$」:若變數不存在,則將減號後面的變數內容賦值給變數,如果變數存在則不做操作。注意:變數內容為空字串和沒有該變數的區別。
「$」:當變數為空字串或不存在時,將冒號後面的內容賦值給變數。
「$」:當變數不存在時,將等號後面的內容賦值給變數。
「$」:當變數不存在時,顯示問號後面的內容。
「unset 變數名」:取消這個變數
「env」:檢視環境變數與常見變數
「set」:檢視所有變數
「export 變數名」:把自定義變數轉成環境變數
「read 變數名」:讀取來自鍵盤的變數
-p 引數:後面可以接提示符
-t 引數:後面接等待時間(秒)
「declare 變數名」:宣告變數的型別
-a 引數:將變數定義成陣列型別(陣列型別變數:變數名[索引]=變數內容)
-i 引數:將變數定義成整數數字型別
-x 引數:將變數變成環境變數(與export類似)
-r 引數:將變數設為readonly(唯讀)型別,不能更改,也不能重設
「#」:刪除變數部分內容(從最先面開始向右刪除,且刪除最短的那個),如$表示刪除從最開始到第乙個「/*test/bin:」處中間的內容,注意「:」。
「##」:刪除變數部分內容(從最先面開始向右刪除,且刪除最長的那個),如$從最開始到最後乙個「/*/test/bin:」處中間的內容。
「%」:從後向前刪除(最短的那個),如$,該命令刪除了最後乙個路徑
「%%」:從後向前刪除(最長的那個)
「$」:第乙個舊字串被新字串替換掉。
「$」:所有舊字串被新字串替換。
「alias」:檢視或設定別名命令
後面不接內容:顯示所有別名命令
alias 命令別名=『命令』:將命令賦值給命令別名,之後使用命令別名即可代替命令的,適用於較長命令的簡化
「unalias」:取消命令別名
「history」:顯示之前輸入過的命令。
history 3:顯示最近輸入過的三條命令,不加數字則預設全部顯示(用echo $histsize可檢視最大快取的歷史命令數量)
history -w:將目前的history記憶內容寫入histfiles中
」!number「:執行編號為number的一條命令
」!command「:由最近的命令向前搜尋以command開頭的命令
「locale」:顯示支援語系
「type」:檢視命令型別
不加引數時,會顯示type後面接的命令為外部命令還是bash內建命令
-t 引數:顯示命令的意義(file:表外部命令;alias錶該命令為別名命令;builtin:表內建命令)
-p 引數:後接命令為外部命令時才會顯示完整檔名
-a 引數:會將path變數定義中所有含「後接命令名」的命令都列出來
「cut」:選取命令,將一段資訊「切」出來顯示,以行為單位。
cut -d '分割字元' -f 顯示範圍(編號從以開始):將前乙個命令傳遞的資訊按「分割符號」進行分割,並顯示。顯示範圍從1開始,可以寫成:「1,2,3」,「1-5」
cut -c 字元範圍:將前乙個命令傳遞的資訊按規定範圍顯示。字元範圍可以是:「20-」,表示從第20個字元開始顯示;「20-30」,表示顯示第20個到第30個字元之間的內容。
「grep -[a/c/i/n/v] -an -bn --color=auto '查詢字串' filename」:選取命令,以行為單位。顯示出含有該字串的那一行。
--color=auto:將查詢的結果用其他顏色顯示。預設(命令別名)
-c:只顯示查詢到字串的個數
-a:將binary檔案以text檔案的方式查詢資料
-v:顯示沒有找到的那一行
-i:忽略大小寫
-n:順便輸出行號
當grep單獨使用時,需要filename引數,相當於cat filename | grep ......
-an:n為數字,表示將該行之後的n行也顯示出來。
-bn:n為數字,表示將該行之前的n行也顯示出來。
關於這部分的知識有點多,暫時先記錄這些,以後再用到其它內容時再做補充。
Bash Shell學習筆記四
set commond 將位置引數設定為後面的命令輸出 shell命令中 在 後面的語句將會不再解釋後面的 cal 萬年曆 bc 計算器 histsize 歷史大小 random 隨機數 basename pathname 去除路徑字首的最後部分 空變數 1 1 沒有賦值或申明的變數 1 1 字元變...
Bash Shell學習筆記一
1.在linux中執行指令碼檔案時 以 執行的 或者普通方式 輸入檔名 執行時是啟動子shell執行的,所以,一切環境變數設定在推出後失效 因此在指令碼中設定 path將失效,如果一定要以指令碼方式來設定,需要 空格 檔名或者 source 指令碼檔案的形式執行.2.linux中的 和 雙引號和單引...
linux 學習筆記四 bash shell
type 查詢命令是否為bash 內建命名 變數的設定規則 myname ceshi 變數與變數內容用 連線 變數名稱可以是數字英文本母,但是不能以數字開頭。內容如果有空白可以用單引號 或者雙引號 但是單引號只能作為一般字元也就是文字顯示,雙引號可以引用變數。變數的增加 名稱 增加內容,或者 內容 ...