OS, 資安

cmd找檔案內字串

我們有時候在找檔案文字時,可能會需要一個檔案一個檔案把他打開來找,這很沒效率。這時候你可以用cmd指令一次搜尋整個資料夾甚至包含子資料夾下的檔案,看有沒有哪個檔案有包含到你要的文字,像下面這樣可以拿來找密碼或是flag,但是他有個限制就是他都是把檔案當作記事本打開來找的方式,所以你要是有pdf excel等的就不能用這方式找。

findstr /p /i /s /c:"密碼" *.txt
#或是拿來找flag
findstr /n /i /s "flag" *
參數說明
/b如果文字模式位於行的開頭,則會比對。
/e符合文字模式(如果它位於行尾)。
/l以真正的程式處理搜尋字串。
/r以正則運算式處理搜尋字串。 這是預設值。
/s搜尋目前的目錄和所有子目錄。
/i搜尋字串時,忽略字元的大小寫。
/x列印完全相符的行。
/v只列印不包含相符項的行。
/n列印每一行相符的行號。
/m如果檔案包含相符的檔案,則只列印檔案名。
/o在每個相符行之前列印字元位移。
/p略過具有不可列印字元的檔案。
/off [行]不會略過已設定 offline 屬性的檔案。
/f<file>從指定的檔案取得檔案清單。
/c<string>使用指定的文字做為常值搜尋字串。(似乎可以不用特別指定)
/g<file>從指定的檔案取得搜尋字串。
/d<dirlist>搜尋指定的目錄清單。 每個目錄都必須以分號 (; 例如 dir1;dir2;dir3 ) 。
/a<colorattribute>指定具有兩個十六進位數位的色彩屬性。 輸入 color /? 以取得詳細資訊。
<strings>指定要在 檔案名中搜尋的文字。 必要。
[\<drive>:][<path>]<filename>[...]指定要搜尋的位置和檔案。 至少需要一個檔案名。
/?在命令提示字元顯示 [說明]。

linux 找檔案

如果是linux要找檔案名稱的話,可以參考下面這樣,例如我要找檔案名稱是user開頭的 ,然後過程不要出來,只留正確的顯示就好就需要參數2> /dev/null

find / -name user* -ls 2> /dev/null

linux找檔案內文字

如果我要找當下目錄的所有檔案內,看是否有flag字串就是如下

. (小數點)表示當下你所在的目錄,你也可以改成指定的路徑也行

rep -nir flag .

參考文章:Microsoft_findstr

Be the First to comment.

Leave a Comment

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

(若看不到驗證碼,請重新整理網頁。)