1、shell操作環(huán)境
A、命令查找書序(可通過type -a cmd確定)
a、帶路徑命令直接執(zhí)行;
b、搜索alias別名定義命令執(zhí)行;
c、bash內(nèi)置(builtin)命令執(zhí)行;
d、通過PATH環(huán)境變量搜索執(zhí)行。
B、登錄歡迎信息
/etc/issue 登錄前提示
/etc/issue.net telnet登錄前提示
/etc/motd 登錄成功后的每日消息
C、bash環(huán)境配置文件
login shell(tty1~tty6)讀取順序
/etc/profile
/etc/.bash_profile、/etc/bash_login、/etc/.profile 優(yōu)先級從左到右,讀取到一個后就不在讀其他的
~/.bashrc
non-login shell(gnome終端)讀取順序
~/.bashrc
/etc/bashrc 若有的話,可能會調(diào)用
source(.)命令 重新讀取環(huán)境變量
source /etc/bashrc
. ~/.bashrc

e024bc49-1bb4-4207-aa92-193915c878a7.png
![Uploading 07887022-2d8c-4e3a-8549-d9cdb85db30d_762999.png . . .]
D、終端機環(huán)境設置
stty -a 列出當前所有設置
stty intr ^C 設置以ctrl+c發(fā)出中斷信號
set
echo $- 顯示set的當前值
/etc/inputrc set相關的設置文件
E、通配符與特殊符號
a、通配符wildcard

07887022-2d8c-4e3a-8549-d9cdb85db30d.png
b、特殊符號

8fb3a692-2802-4209-bfe6-567886d10aa3.png
2、數(shù)據(jù)流重定向
標準輸入(stdin),代碼為0,使用<或<<;
標準輸出(stdout),代碼為1,使用>或>>;
標準錯誤輸出(stderr),代碼為2,使用2>或2>>;
/dev/null垃圾桶黑洞設備
標準輸出與標準錯誤輸出合并寫法
2>&1(&>),如:
cat passwd >show 2>&1
![Uploading cbcdbda5-2914-45a3-8b8d-1c29a20cef58_827034.png . . .]
cat passwd &> show
命令的連續(xù)執(zhí)行
不相關命令使用分號;即可,如 sync;sync;shutdown -h now
相關命令使用&&、||連接,如 ls passwd && cat passwd

cbcdbda5-2914-45a3-8b8d-1c29a20cef58.png
3、管道命令(pipe)
管道命令接受前一個命令的標準輸出作為下一個命令的標準輸入,使用“|”連接
選取命令:cut、grep
排序命令:sort、wc、uniq
雙向重定向:tee 可以將中間數(shù)據(jù)流保存一份到文件里面,不影響后面的管道命令
tee [-a] filename 如:
ll /home | tee showfile | more
字符轉(zhuǎn)換命令:
tr STR1 STR2 將STR1轉(zhuǎn)化為STR2
tr -d STR 刪除信息中的STR這個字符串
tr -s STR 替換信息中的STR這個字符串
col -x 將信息流中的tab轉(zhuǎn)換為對應的空
join
paste
參數(shù)代換:xargs
對于不支持管道的命令,xargs可以提供該命令引用標準輸入,如:
find ./ -name passwd | xagrs ls -l
減號(-)在管道命令中,可以用來代替標準輸出和標準輸入。