共用方式為


尋找

搜尋檔案或檔案中的文字字串,並顯示包含指定字串的文字行。

語法

find [/v] [/c] [/n] [/i] [/off[line]] <"string"> [[<drive>:][<path>]<filename>[...]]

參數

參數 說明
/v 顯示不包含指定 <string>的所有行。
/c 計算包含指定 <string> 之的行數,並顯示總計。
/n 在每個行前面加上檔案的行號。
/我 指定搜尋不區分大小寫。
[/off[line]] 不會略過已設定離線屬性的檔案。
<"string"> 必須的。 指定您想要搜尋的字元群組(以引弧括住)。
[<drive>:][<path>]<filename> 指定要搜尋指定字串之檔案的位置和名稱。
? 在命令提示字元顯示說明。

出口代碼

退出代碼 說明
0 找到搜尋的字串
1 找不到搜尋的字串
2 找不到搜尋的檔案或指定的命令行參數無效

備註

  • 如果您未使用 /i,此命令會搜尋您指定 字串的確切內容。 例如,此命令會以不同的方式處理字元aA。 不過,如果您使用 /i,則搜尋會變得不區分大小寫,而且會將 和 a 視為A相同的字元。

  • 如果您想要搜尋的字串包含引號,則必須針對字串中包含的每個引號使用雙引號(例如“”“此字串包含引號”“ )。

  • 如果您省略檔名,此命令會做為篩選,從標準輸入來源取得輸入(通常是鍵盤、管道 (|) 或重新導向的檔案),然後顯示任何包含 字串的行。

  • 若要結束主控台搜尋,請使用 CTRL-XCTRL-z

  • 您可以依任何順序輸入 尋找 命令的參數和命令行選項。

  • 您無法在搜尋的字串中使用通配符 (*)。 若要搜尋具有通配符和 regex 模式的字串,您可以使用 FINDSTR 命令。

  • 如果您在相同的命令列中使用 /c/v ,此命令會顯示不包含指定字串的行計數。 如果您在相同的命令行中指定 /c/n則尋找 會忽略 /n

  • 此命令無法辨識歸位字元。 當您使用此命令來搜尋包含歸位字元的檔案中的文字時,您必須將搜尋字串限制為可在歸位字元之間找到的文字(也就是說,不一定被歸位字元中斷的字元串)。 例如,如果歸位字元介於 tax 和 file 之間發生歸位字元,此命令不會報告字串稅務檔案的相符專案。

  • 此命令接受檔名的通配符。 在檔案中搜尋時,它會列印已處理檔案的檔案前面加上10個破折號。

  • Find 命令無法讀取替代數據流。 若要在替代數據流中搜尋,請使用findstr,或用於 /f 命令。

範例

若要顯示包含字串鉛筆銳化器之 pencil.md 的所有行,請輸入:

find "pencil sharpener" pencil.md

為了找到這些文字, 「科學家只將論文標記為討論。這不是最終報告。 (包括引號)在 report.txt 檔案中輸入:

find """The scientists labeled their paper for discussion only. It is not a final report.""" < report.txt

若要搜尋一組檔案,您可以使用通配符。 若要搜尋目前目錄是否有擴展名 為.bat 且包含忽略大小寫之字串 PROMPT 的檔案,請輸入:

find /i "PROMPT" *.bat

若要在包含字串 CPU 的目錄中尋找檔名,請使用管道 (|) 將 dir 命令的輸出導向至 find 命令,如下所示:

dir c:\temp /s /b | find "CPU"

尋找不包含 代理程式的所有執行中行程:

tasklist | find /v /i "agent"

檢查服務是否正在執行:

sc query  Winmgmt | find "RUNNING" >nul 2>&1 && (echo service is started) || (echo service is stopped)