Linux下命令的學習

2021-06-21 13:07:47 字數 1847 閱讀 3974

之前做windows平台的開發,現在轉向做linux平台的開發了,所以要不斷學習linux平台的開發環境。該部落格主要記錄本人linux下命令的學習,大家共勉

2014.4.15

grep:【介紹】 grep [options] 基本正規表示式 [檔案] 

字串引數最好採用是雙引號括,一是以防被誤解為shell命令,二是可以用來查詢多個單詞組成的字串 

-c:只輸出匹配行的記數 

-i:不區分大小寫(只適用於單個字元) 

-h:查詢多個檔案時不顯示檔名 

-h:只顯示檔名 

-l:查詢多檔案時只輸出包含匹配字元的檔名 

-n:只顯示匹配行及其行號 

-s:不顯示不存在或無匹配文字的錯誤資訊。 

-v:顯示不包含匹配文字的所有行。 

【舉例說明】

grep ^[^210] myfile 匹配myfile中以非2、1、0開頭的行 

grep "[5-8][6-9][0-3]" myfile 匹配myfile中第一位為5|6|7|8,第二位6|7|8|9,第三位為0|1|2|3的三個字元的行 

grep "4\" myfile 匹配myfile中含有44,444或4444的行 

grep "\?" myfile匹配myfile中含有任意字元的行 

【grep命令類名】

[[:upper:]] 

表示[a-z] 

[[:alnum:]] 

表示[0-9a-za-z] 

[[:lower:]] 

表示[a-z] 

[[:space:]] 

表示空格或者tab鍵 

[[:digit:]] 

表示[0-9] 

[[:alpha:]] 

表示[a-za-z] 

如:grep "5[[:digit:]][[:digit:]]" myfile 匹配myfile中含有5開頭接下去兩位都是數字的行。

【常用例項】

#顯示所有以d開頭的檔案中包含 test的行

$ grep 『test』 d*         

#顯示在aa,bb,cc檔案中匹配test的行

$ grep 『test』 aa bb cc

#顯示所有包含每個字串至少有5個連續小寫字元的字串的行

$ grep 『[a-z]\』 aa

#如果west被匹配,則es就被儲存到記憶體中,並標記為1,然後搜尋任意個字元(.*),這些字元後面緊跟著 另外乙個es(\1),找到就顯示該行。如果用egrep或grep -e,就不用」\」號進行轉義,直接寫成』w(es)t.*\1′就可以了

$ grep 『w\(es\)t.*\1′ aa

#多個檔案查詢

$ grep "sort" *.doc

#行匹配:輸出匹配行的計數

,輸出文件中含有48字元的行數

$ grep -c "48" data.doc

#顯示匹配行和行數

,顯示所有匹配48的行和行號

$ grep -n "48" data.doc

#顯示非匹配的行

,輸出所有不包含48的行

$ grep -vn "48" data.doc   

#顯示非匹配的行

,輸出所有不包含48的行

$ grep -vn "48" data.doc    

#大小寫敏感

,輸出所有含有ab或ab的字串的行

$ grep -i "ab" data.doc      

【總結】

今天是為了查詢某個目錄下所有包含某個字串的檔案。所使用的命令是:grep "platman.vpm" /mnt/hgfs/projects/pvs_sdk -r

linux系統下命令的學習

本部落格是本人工作時做的筆記 ps aux grep profile grep a190200024 表示行首匹配 linux檢視檔案大小 具體可檢視 du mnt hegh project max depth 1 h 從一台電腦上覆制檔案到另一台電腦上 scp gcf fna.gz dev.ttj...

linux下ln命令學習

這是linux中乙個非常重要命令,請大家一定要熟悉。它的功能是為某乙個檔案或目錄在另外乙個位置建立乙個同步的鏈結,類似windows下的超級鏈結。這個命令最常用的引數是 s,具體用法是 sudo ln s 原始檔 目標檔案 舉例 當前目錄是 local,而我經常要訪問 usr local linux...

linux下命令 學習筆記

2013.12.14 1 顯示分屛 每次在終端用ls,可能會出現檔案過多,導致前部分的內容無法檢視,這是可以使用 ls less命令,進入分屛顯示模式,鍵盤中pgup和pgon控制上下頁,退出按快捷鍵shift q。2 google chrome的安裝目錄在 opt google chrome 其他...