一、使用幫助
1贷岸、Help:# help Command適用于內(nèi)部命令晋南;# Command --help/-h適用于外部命令。至于外部命令和內(nèi)部命令的區(qū)分我們使用# type Command來查看如果顯示builtion該命令是內(nèi)部命令如果是hashed則該命令是外部命令蚣驼。
2魄幕、Whatis:查看某個(gè)命令的簡要說明,通過調(diào)用系統(tǒng)中的數(shù)據(jù)庫文件來找命令的功能描述# whatis Command颖杏。當(dāng)然纯陨,這需要先建立建立搜索使用的數(shù)據(jù)庫,當(dāng)使用者命令發(fā)生錯(cuò)誤時(shí)留储,就是whatis database沒有建立翼抠。輸入:#makewhatis建立搜索用的數(shù)據(jù)庫。
3获讳、Info:更加詳細(xì)的說明文檔阴颖。# info Command,info是信息頁丐膝,提供作者量愧、版本,什么時(shí)候發(fā)布等更詳細(xì)信息帅矗,man是手冊告訴你怎么用偎肃。info page的按鍵 空格鍵向下翻一頁 ,pagedown向下翻一頁浑此,pageup向上翻一頁软棺,tab在node之間移動(dòng),enter當(dāng)光標(biāo)在node上時(shí)按下enter可進(jìn)入該node尤勋,b將光標(biāo)移動(dòng)到第一個(gè)node處喘落,c將光標(biāo)移動(dòng)到最后一個(gè)node處茵宪,n前往那個(gè)下一個(gè)info page ,p前往上一個(gè)node處瘦棋,u向上移動(dòng)一層稀火,s(/)在infopage中搜索,h顯示幫助菜單赌朋,凰狞?命令一覽表,q退出info沛慢。-
4赡若、Which:查看命令在哪個(gè)位置,#where is command团甲,當(dāng)系統(tǒng)中安裝了同一軟件的多個(gè)版本時(shí)逾冬,不確定使用的是哪個(gè)版本時(shí),這個(gè)命令就能派上用場躺苦。
5身腻、Man:而對(duì)于命令的具體參數(shù)及使用方法,我們需要用到強(qiáng)大的man匹厘;在只記得部分命令關(guān)鍵字的場合嘀趟,我們可通過man -k來搜索;
man常用命令參數(shù)
- man -a:搜索并打開所有man中同名幫助愈诚,例如 man passwd 她按,你首先會(huì)進(jìn)入一個(gè)PASSWD(1) section用戶命令類的幫助手冊,你再按q鍵退出當(dāng)前正在顯示的幫助手冊炕柔,就會(huì)進(jìn)入PASSWD(5) section文件格式類的幫助手冊酌泰。
- man -aw:顯示所有手冊文件的路徑。例如man -aw passwd
- /usr/share/man/man1/passwd.1.gz
- /usr/share/man/man5/passwd.5.gz
- man -M:指定手冊文件的搜索路徑汗唱,有的時(shí)候我們自己安裝的軟件是帶有自己的幫助文件的,通常不在我們的MANPATH里面丈攒,那么我們就可以手動(dòng)指定man搜索的文件路徑哩罪。如 man -M /home/mysql/man mysql,顯示的就是你安裝的mysql的幫助巡验,而不是系統(tǒng)默認(rèn)的舊版mysql的幫助际插。
- man -k:根據(jù)關(guān)鍵字搜索聯(lián)機(jī)幫助,是一種模糊搜索显设。例如要查找"passwd"相關(guān)的信息框弛,使用man -k passwd會(huì)找到很多和passwd相關(guān)的幫助頁。如:我忘記了iptables命令就只能記住ipta則可以使用man -k ipta 捕捂,系統(tǒng)會(huì)把包括ipta的命令顯示在屏幕上
- man -f:關(guān)鍵字精確搜索瑟枫,與-k不同斗搞,它只搜索與關(guān)鍵字完全匹配的幫助頁。
二慷妙、grep
grep 選項(xiàng) 查找格式 file僻焚,grep [選項(xiàng)] [-e 查找模式| -f 文件]
-r 是遞歸查找
-n 是顯示行號(hào)
-R 查找所有文件包含子目錄
-i 忽略大小寫
-E 將查找模式解釋成擴(kuò)展的正則表達(dá)式。
-F 將查找模式解釋成單純的字符串膝擂。
-b虑啤,--byte-offset 在輸出的每一行前面顯示包含匹配字符串的行在文件中的位置,用字節(jié)偏移量來表示架馋。
-c狞山,--count 只顯示文件中包含匹配字符串的行的總數(shù)。
-f FILE 從文件FILE中獲取模式叉寂,每行一個(gè)萍启。空文件不含模式办绝,因此伊约,不做匹配。
-i 匹配比較時(shí)不區(qū)分字母的大小寫孕蝉。
-v 只顯示不包含匹配字符串的文本行屡律。
-x 只顯示整個(gè)行都嚴(yán)格匹配的行。
-l 只列出匹配的文件名降淮,
-L 列出不匹配的文件名超埋,
-w 精確匹配
-A后面可加數(shù)字,為 after的意思佳鳖,除了列出該行外霍殴,后續(xù)的n行也列出來
-B后面可加數(shù)字,為 befer 的意思系吩,除了列出該行外来庭,前面的n行也列出來
-grep -w ‘magic’f1: 只匹配整個(gè)單詞,而不是字符串的一部分(如匹配’magic’穿挨,而不是’magical’)月弛,
-grep -C 5 :匹配的上下文分別顯示[number]行,
-grep'HID\|ALA':顯示匹配 pattern1 或 pattern2 的行科盛,
-egrep "TA(AA|CC)TA”
egrep表示擴(kuò)展正則表達(dá)式帽衙,用法上grep –E等同于egrep
-grep HID 1tce-a.pdb|grep ALA :顯示既匹配 pattern1 又匹配 pattern2 的行。
-\< 和 \> 分別標(biāo)注單詞的開始與結(jié)尾贞绵。
grep man * 會(huì)匹配 ‘Batman’厉萝、’manic’、’man’等,
grep‘\
grep‘\’只匹配’man’谴垫,而不是’Batman’或’manic’等其他的字符串章母。
-‘^xx’:指匹配的字符串在行首,以xx為開頭
-‘xx$’:指匹配的字符串在行尾弹渔,以xx為結(jié)尾
- ?'^$' :查找空行
-[]:匹配單個(gè)字符胳施;[abl] 匹配 abl中任意一個(gè);[^xx]:對(duì)其中的字符進(jìn)行取反這里只能對(duì)的那個(gè)字符進(jìn)行取反 若是希望是多個(gè)字符取反的話 還需要看看肢专;[char1-char2]:匹配某個(gè)范圍之內(nèi)的數(shù)據(jù) 例如 [a-z][A-Z][0-9]
grep '^[^TER]' ?f1:不顯示行首是含TER行
grep '[A-Z]\{4\}' f1:顯示所有包含每個(gè)字符串至少有4個(gè)連續(xù)大寫字符的字符串的行舞肆。
\{n,m\} :匹配的個(gè)數(shù)
查看g和p之間存在兩個(gè)連續(xù)o的字符串grep -n'go\{2,5\}p'test-grep
查找至少兩個(gè)的字符創(chuàng)grep -n 'go\{2,\}p' pp test-grep
查找只有兩個(gè)的字符串grep -n 'go\{2\}p' pp test-grep
-grep--color=auto‘38$’ 1tce-a.pdb 高亮顯示在行尾為38
. (小數(shù)點(diǎn)):代表『一定有一個(gè)任意字節(jié)』的意思;
* (星星號(hào)):代表『重復(fù)前一個(gè)字節(jié)博杖, 0 到無窮多次』的意思椿胯,為組合形態(tài)
『o*』代表的是:『擁有空字節(jié)或一個(gè) o 以上的字節(jié)』, 特別注意剃根,因?yàn)樵试S空字節(jié)(就是有沒有字節(jié)都可以的意思)哩盲,因此,『 grep -n 'o*' regular_express.txt 』將會(huì)把所有的數(shù)據(jù)都列印出來螢?zāi)簧希?/p>
同理狈醉,當(dāng)我們需要『至少兩個(gè) o 以上的字串』時(shí)廉油,就需要 ooo*
三、tar
tar 打包壓縮:tar zcvf [目標(biāo)文件.tgz] 源文件苗傅;解壓 tar xvf
-j—壓縮格式 壓縮比高-bz2屬性的-tar.bz2
-z—gzip壓縮-tar.gz
-Z:有compress屬性的
-v:顯示所有過程
-O:將文件解開到標(biāo)準(zhǔn)輸出
-c 打包成一個(gè)文件
-v可見
-x:解壓
-t:查看內(nèi)容
-r:向壓縮歸檔文件末尾追加文ta'r件
-u:更新原壓縮包中的文件
tar –xvf file.tar ?解壓 tar包
tar -xzvf file.tar.gz ?解壓tar.gz
tar -xjvf file.tar.bz2 ?解壓 tar.bz2
tar –xZvf file.tar.Z ?解壓tar.Z
unrar e file.rar ?解壓rar
unzip file.zip ?解壓zip
zip file.zip *.jpg ? 壓縮zip
rar a file(.rar) *.jpg ?壓縮rar
gzip -d file.gz ?解壓gz
gunzip test.txt.gz
gzcat ?不解壓查看
四抒线、awk
awk? [-F|-f|-v]'BEGIN{} //{command1; command2}? END{}'? file
[-F|-f|-v] 大參數(shù),-F指定分隔符渣慕,-f調(diào)用腳本嘶炭,-v定義變量 var=value
' ' 引用代碼塊
BEGIN 初始化代碼塊,在對(duì)每一行進(jìn)行處理之前逊桦,初始化代碼眨猎,主要是引用全局變量,設(shè)置FS分隔符
// 匹配代碼塊强经,可以是字符串或正則表達(dá)式
//純字符匹配 !//純字符不匹配 ~//字段值匹配 !~//字段值不匹配 ~/a1|a2/字段值匹配a1或a2
{} 命令代碼塊睡陪,包含一條或多條命令
; 多條命令使用分號(hào)分隔
END 結(jié)尾代碼塊匿情,在對(duì)每一行進(jìn)行處理之后再執(zhí)行的代碼塊兰迫,主要是進(jìn)行最終計(jì)算或輸出結(jié)尾摘要信息
awk是個(gè)很強(qiáng)大的命令,這里可以推薦一個(gè)比較淺顯易懂的介紹
http://www.cnblogs.com/xudong-bupt/p/3721210.html