在Windows下使用類似grep的指令findstr

Linux下可以使用 grep 指令來尋找字串,但是 Windows 底下並沒有 grep 的指令。

原來 Windwos 也有一個類似 grep 的指令:findstr,支援搜尋多個檔案及遞迴搜尋子目錄。

例如:findstr “serve” app.js package.js

上述範例是要在app.js、package.js這兩個檔案中找出 serve 的字串,其結果如下:

app.js:var favicon = require('serve-favicon');
package.json:    "serve-favicon": "~2.3.0"

另外 findstr 有兩個常用的參數 /i、/c、/m、/l

/i:不分大小寫

/c:使用特定的字串作為搜尋的字串

/m:只列出符合的檔案名稱

/l:搜尋字有帶有特別符號

例如:findstr “my love” aa.txt,預設會以多個字串來搜尋,所以只要符合「my」或「love」就會顯示出來,如果改為 findstr /c:”my love”,則會以「my love」來搜尋。

範例:

搜尋符合「insert into tmp」的任何副檔名.fmb
c:/> findstr /i /m /c:"insert into tmp" *.fmb

搜尋符合「"npm」的字串
c:/> findstr /l "\"npm" test.txt

其餘更多的參數可以參考 「findstr /?」

Windows 11安裝時跳過網路連線