8.6 管道符和作業控制
8.7/8.8 shell變量
8.9 環境變量配置文件
8.6 管道符和作業控制
1.管道符 | 把前面命令的結果傳給後面的命令
例如,# cat 1.txt |wc -I
或者 # cat 1.txt |grep'aaa' -------|grep‘關鍵詞’ 過濾指定關鍵詞
2.鍵盤 ctrl+z 暫停一個任務 去做別的操作(返回命令界面)
暫停任務後如何返回原來的任務中去 # fg 最後一個命令 # fg n --- n代表數字 (返回前臺的意思)
當有兩個或兩個以上的暫停任務 需要用 # jobs 查看 然後用# fg n 指定開啓哪個任務
3.# bg n 把任務調到後臺並運行 # fg 把任務調到前臺
4.# 命令 $ 把一條命令丟到後臺去執行8.7/8.8 shell變量
變量就是使用一個比較簡單的字符串來代替某些具有特殊意義的設定以及數據
環境變量PATH,它是shell預設的一個變量,通常shell預設的變量都是大寫的
1.# eva 使用env命令可以列出系統預設的全部系統變量
輸入 eva命令之後 查看變量
HOSTNAME:表示主機的名稱
SHELL:表示當前用戶的shell類型
HISTSIZE:表示歷史記錄數
MAIL:表示當前用戶的郵件存放目錄
PATH:改變量決定了shell將到那些目錄中尋找命令或者程序
PWD:表示當前目錄
LANG:這是與語言相關的環境變量,多語言環境可以修改此環境變量
HOME:表示當前用戶的家目錄
LOGNAME:表示當前用戶的登錄名
2.# sat 不僅僅可以查看系統內置的變量還可以查看用戶自定義的變量
如shell 腳本類
自定義變量 # a=111 # echo $a
查看變量 可以用 # set |grep 111 或者 # set |less
3.變量名規則 寫shell腳本的時候會經常使用變量
可以是數字 字母 下劃線,但是首位不能是數字
4.變量的值有特殊符號時,需要用單引號括起來 ‘ ’
5.變量的累加
6. # export 變量名=變量的值---------全局變量
注意:export聲明變量a後,只會讓該shell的子shell或者孫shell生效,但是不會讓它的父shell和其他終端的shell生效echo $SSH_TTY 查看在哪個終端下
在終端1 自定義一個環境變量---------然後# bash
7. # unset 變量名字 ---取消變量
8.9 環境變量配置文件
環境變量有兩個維度 一個是 系統層次 /etc/下的文件 , 一個是用戶層次 用戶家目錄下的 /.bashrc /.bash_profile
profile 是用戶登錄的時候會加載到的環境變量
bashrc 是系統或用戶執行 bash 或shell腳本的時候
系統的默認的環境變量配置文件 一般不要動
如果有需求 可以編輯用戶自己的環境變量文件 # vim .bash_profile
~/.bash_profile
該文件定義了用戶的個人化路徑於環境變量的文件名稱;
每個用戶都可使用該文件輸入專屬自己的shell信息,當用戶登陸時,該文件僅執行一次。
~/.bash_history
該文件用戶記錄命令歷史。
~/.bash_logout
當退出shell時,會執行該文件,可以將一些清理的工作放到這個文件中。
更改用戶自定義顏色:
# PS1='[\033[01;32m]\u@\h[\033[00m]:[\033[01;36m]\w[\033[00m]\$ '
擴展
bashrc和bash_profile的區別 http://ask.apelearn.com/question/7719
簡易審計系統: http://www.68idc.cn/help/server/linux/2014042190951.html
關於PROMPT_COMMAND環境變量的含義 http://www.linuxnote.org/prompt_command-environment-variables.html