簡單點說,grep是查詢匹配條件的行,find是搜尋匹配條件的檔案。
ct@ubuntu:~/desktop/mydriver$grep -nr ./"include"
結果: 在當前目錄下顯示行 r -- 遞迴 n---行數 ---i 查詢時忽略大小寫 -h或--with-filename 在顯示符合範本樣式的那一列之前,表示該列所屬的檔名稱。
.led.o.cmd:34: arch/x86/include/asm/posix_types.h \
.led.o.cmd:36: arch/x86/include/uapi/asm/posix_types_32.h \
.led.o.cmd:72: /usr/lib/gcc/i686-linux-gnu/4.8/include/stdarg.h \
ct@ubuntu:~/desktop/mydriver$grep -rn "open" . --include=*.c
結果:. --include=*.c -----當前目錄下的 c檔案中
./led.c:17:int led_drv_open(struct inode * node, struct file* h_fl)
ct@ubuntu:~$find . -type f -name "*.c" | xargs grep "return"
結果:find .當前目錄-type f檔案型別 f普通檔案xargs遞迴查詢目標字元可帶*等符號 可不帶引號
./desktop/quelink.c: return ( (ql->head==ql->rear)&&(ql->head==ql->front) );
./desktop/quelink.c: return;
ct@ubuntu:~$find . -name '*.c' -exec grep -l "include" {} \;
結果:exec選項後面跟隨著所要執行的命令或指令碼,然後是一對兒 {},乙個空格和乙個\,最後是乙個分號。 cmd {} \;
引數後面跟的是command命令,它的終止是以;為結束標誌的,所以這句命令後面的分號是不可缺少的,考慮到各個系統中分號會有不同的意義,所以前面加反斜槓。
{} 花括號代表前面find查詢出來的檔名
./desktop/quelink.c
./desktop/chain.c
./desktop/test.c
2 Linux常用操作命令(一)
bash 是gnu的bourne again shell,是gnu作業系統上預設的shell。bourne shell 是貝爾實驗室開發的shell。korn shell 是對bourne shell的發展,在大部分內容上與bourne shell相容。c shell 是sun公司shell的bsd...
Linux常用命令(2)目錄操作命令
目錄的表達方法 根目錄 當前目錄 上一級目錄 家目錄 選項 區別 選項 選項 mkdir dir1在當前目錄下建立 dir 子目錄 mkdir tmp dir2在指定目錄 tmp 下建立 dir2 子目錄 mkdir p dir3 dir4在當前目錄下建立 2 級目錄 dir3 和其子目錄 dir4...
Linux操作命令2
mkdir創目錄 mkdir 選項 路徑 目錄名 mkdir abc 在當前目錄下建立名為abc的子目錄 mkdir abs sh 在abc下建立目錄sh rmdir刪除空目錄 從底級開始刪刪空目錄 rmdir 選項 目錄 rmdir bs sh 刪除bs中的sh tree從根目開始列出目錄結構 m...