1. 程式人生 > >winodws下cmd對結果進行篩選

winodws下cmd對結果進行篩選

舉個例子,我要檢視php有沒有安裝zip拓展,一般情況下,我們直接執行下面的命令,但是結果比較多,雖然已經按照首字母排好了順序,但是看起來還是感覺很亂.有沒有類似linux下面的grep方法過濾呢?答案是有的.


C:\Users\Administrator>php -m
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dom
fileinfo
filter

在windows下面利用find過濾:

C:\Users\Administrator>php -m |find /i "zip"
zip

檢視幫助方式也比較特別:

find /?

FIND [/V] [/C] [/N] [/I] [/OFF[LINE]] “string” [[drive:][path]filename[ …]]
/V 顯示所有未包含指定字串的行。
/C 僅顯示包含字串的行數。
/N 顯示行號。
/I 搜尋字串時忽略大小寫。
/OFF[LINE] 不要跳過具有離線屬性集的檔案。
“string” 指定要搜尋的文字字串。
[drive:][path]filename
指定要搜尋的檔案。
如果沒有指定路徑,FIND 將搜尋在提示符處鍵入
的文字或者由另一命令產生的文字。

怎麼沒有萬用字元??答案是也是有的!

C:\Users\Administrator>findstr /?
在檔案中尋找字串。
FINDSTR [/B] [/E] [/L] [/R] [/S] [/I] [/X] [/V] [/N] [/M] [/O] [/P] [/F:file]
[/C:string] [/G:file] [/D:dir list] [/A:color attributes] [/OFF[LINE]]
strings [[drive:][path]filename[ …]]
/B 在一行的開始配對模式。
/E 在一行的結尾配對模式。
/L 按字使用搜索字串。
/R 將搜尋字串作為一般表示式使用。
/S 在當前目錄和所有子目錄中搜索匹配檔案。
/I 指定搜尋不分大小寫。
/X 列印完全匹配的行。
/V 只打印不包含匹配的行。
/N 在匹配的每行前列印行數。
/M 如果檔案含有匹配項,只打印其檔名。
/O 在每個匹配行前列印字元偏移量。
/P 忽略有不可列印字元的檔案。
/OFF[LINE] 不跳過帶有離線屬性集的檔案。
/A:attr 指定有十六進位數字的顏色屬性。請見 “color /?”
/F:file 從指定檔案讀檔案列表 (/ 代表控制檯)。
/C:string 使用指定字串作為文字搜尋字串。
/G:file 從指定的檔案獲得搜尋字串。 (/ 代表控制檯)。
/D:dir 查詢以分號為分隔符的目錄列表
strings 要查詢的文字。
[drive:][path]filename
指定要查詢的檔案。
除非引數有 /C 字首,請使用空格隔開搜尋字串。
例如: ‘FINDSTR “hello there” x.y’ 在檔案 x.y 中尋找 “hello” 或
“there”。’FINDSTR /C:”hello there” x.y’ 檔案 x.y 尋找
“hello there”。
一般表示式的快速參考:
. 萬用字元: 任何字元
* 重複: 以前字元或類出現零或零以上次數
^ 行位置: 行的開始
$ 行位置: 行的終點
[class] 字元類: 任何在字符集中的字元
[^class] 補字元類: 任何不在字符集中的字元
[x-y] 範圍: 在指定範圍內的任何字元
\x Escape: 元字元 x 的文字用法
\


C:\Users\Administrator>php -m |findstr /r "zi."
zip