天天看點

shell基礎之管道符和變量

管道符和變量

一、管道符和作業指令

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 變量名”即可

本文轉自 YAOvYAO 51CTO部落格,原文連結:http://blog.51cto.com/yaoyao1314520/1982672