管道符和變數
一、管道符和作業命令
1.txt |wc –l; cat 1.txt|greap 『aaa』
管道符的命令就是把前面輸出的結果交給後面的命令
2.ctrl z 暫停乙個任務
3.jobs檢視後台的任務
4.bg[id] 把任務調到後台,使它到後台執行background執行多個任務要使用bg 1 bg 2,如果不加引數
就是預設的最後乙個執行的程式
5.fg[id] 把任務調到前台,恢復這個任務,調到前台來 foreground,執行多個任務可以使用fg 1 fg 2恢復這個任務,調到前台來 foreground,執行多個任務可以使用fg 1 fg 2
7.命令後面加&直接把任務丟到後台
二、變數
1. path、home、pwd、logname
常見的環境變數:
path 決定了shell將到哪些目錄中尋找命令或程式
home 當前使用者主目錄
histsize 歷史記錄數
logname 當前使用者的登入名
hostname 指主機的名稱
shell 前使用者shell型別
lang 語言相關的環境變數,多語言可以修改此環境變數
mail 當前使用者的郵件存放目錄
pwd 當前目錄
2. env命令:env命令即可全部列出系統預設的全部系統變數
3. set命令多了很多變數,並且包括使用者自定義的變數
4. 自定義變數a=1
變數規則:
a. 設定變數的格式為」a=b」,其中a為變數名,b為變數的內容,等號兩邊不能有空格;
b. 變數名只能由英、數字以及下劃線組成,而且不能以數字開頭;
c. 當變數內容帶有特殊字元(如空格)時,需要加上單引號,變數內容中本身帶有單引號,這就需要用到雙引號了
d. 如果變數內容中需要用到其他命令執行結果則可以使用反引號;
e. 變數內容可以累加其他變數的內容,需要加雙引號;
f.變數名規則:字母、數字下劃線、首位不能為數字
5. 變數的累加
6. 全域性變數export b=2
export其實就是宣告一下這個變數的意思,讓該shell的子shell也知道變數的值是什麼.如果export後面不加任何變數名,則它會宣告所有的變數。
7. unset變數:
如果想取消某個變數怎麼辦?只要輸入」unset 變數名」即可
shell指令碼之管道符和mv
需求 想列出指定的內容並將其轉移到新的目錄中 通過使用mv和管道符有幾種方法,1 file ls pattern mv file newdir 2 ls pattern xargs i mv newdir 3 find name pattern exec mv newdir 不要忘記後面的 這是必須...
shell 使用管道符時變數的問題
使用管道符計算檔案行數指令碼如下 bin sh linenum 0 cat test while read line doecho line content line linenum 1 done echo line number linenum 輸出結果為 line content 1 line ...
grep和管道符
找出資料夾下包含 aaa 同時不包含 bbb 的檔案,然後把他們重新生成一下。要求只能用一行命令。我對linux 是個白痴,工作了之後才開始接觸的,會用的命令只有那幾個常用的。這個問題對我來說就有點難度,我只是大概知道查詢檔案用 grep 其他的就不知道了。不過沒關係,用google 查詢到 gre...