Linux系統中grep命令是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹配的行打印出來。grep全稱是Global Regular Expression Print,表示全局正則表達式版本,它的使用權限是全部用戶。git
wc正則表達式
1.命令格式:工具
wc [選項]文件...spa
2.命令功能:命令行
統計指定文件中的字節數、字數、行數,並將統計結果顯示輸出。該命令統計指定文件中的字節數、字數、行數。若是沒有給出文件名,則從標準輸入讀取。wc同時也給出所指定文件的總統計數。code
3.命令參數:視頻
-c 統計字節數。blog
-l 統計行數。進程
-m 統計字符數。這個標誌不能與 -c 標誌一塊兒使用。圖片
-w 統計字數。一個字被定義爲由空白、跳格或換行字符分隔的字符串。
-L 打印最長行的長度。
--help 顯示幫助信息
--version 顯示版本信息
例子: 在文件a中統計 hello 出現的行數:
grep hello a | wc -l
在文件a中統計hello出現的次數:
grep -o hello a | wc -l
grep命令和wc命令 這種能夠在命令行中經過 | 互相連接 ,做爲輸入的命令原來有同一的名字 叫作 :::::::管道命令!
沒錯就是下面這種感受:
一、管道命令只處理前一個命令正確輸出,不處理錯誤輸出。
二、管道命令右邊命令,必須可以接收標準輸入流命令才行。
cat test.sh | grep -n 'good' 輸出: 1:echo very good 2:echo good grep是文本正則查找命令, -n 表示找到後輸出行號; grep的輸入是 cat命令的輸出 也就是整個tesh.sh文本的標準輸出
cat test.sh | ls a.c hah SDK-gcc-1.0 筆記11~ algorithm huawei2016 sed_operation 筆記11 a.out LCSp sed_operation~ 公共的 clion-2016.1.1 learngit Shell 模板 ClionProjects mytest SimilarGraphSearch 視頻 core_uses_pid~ n1 software 圖片 core_uses_piy~ n1~ sublime-imfix.c 文檔 core_uses_piz~ n2 test.sh 無標題文檔~ examples.desktop n2~ test.sh~ 下載 Game Qt The-first-project 音樂 gnuplot-4.4.0 QTWorkspace UNIX 桌面
由於 ls不支持標準輸入 因此test.sh中的內容被丟棄。
cat test1.sh test.sh 2>/dev/null | grep -n 'good' 1:echo very good 2:echo good 5:echo good #將test1.sh 沒有找到錯誤輸出重定向輸出給/dev/null 文件,正確輸出經過管道發送給grep
>是重定向
|是管道重定向
區別是:
一、左邊的命令應該有標準輸出 | 右邊的命令應該接受標準輸入
左邊的命令應該有標準輸出 > 右邊只能是文件
左邊的命令應該須要標準輸入 < 右邊只能是文件
二、管道觸發兩個子進程執行"|"兩邊的程序;而重定向是在一個進程內執行
nice啊 終於理清楚 grep 爲啥總與 | 其餘命令連用 , < >是重定向 ,