如何使用FIND(cmd.exe默認命令)安全地檢測以下字符串,而名稱minnie可以是任何內容?它只是從:行有[email protected]就可以了。使用FIND命令從一行cmd.exe中查找兩個字符串
From: "Minnie" <[email protected]>
它不應該被混合到該路線:
To: <[email protected]>
例如這個批處理文件行不正常工作:
find "[email protected]" abc.txt
如何使用FIND(cmd.exe默認命令)安全地檢測以下字符串,而名稱minnie可以是任何內容?它只是從:行有[email protected]就可以了。使用FIND命令從一行cmd.exe中查找兩個字符串
From: "Minnie" <[email protected]>
它不應該被混合到該路線:
To: <[email protected]>
例如這個批處理文件行不正常工作:
find "[email protected]" abc.txt
您可以使用findstr
而不是find
,它具有更高級的功能,如正則表達式匹配。
findstr /r /c:"^From:.*<[email protected]>" test.txt
僅當行以「From:」開頭時纔會找到指定的電子郵件地址。
findstr
至少自Windows 2000
我真的不認爲你將能夠完成與找到,因爲找到只查找文字匹配,也沒有使用通配符或正則表達式的能力。
如果您有選擇,您可以安裝UnxUtils軟件包並使用grep來執行此操作。它是Win32常用Unix實用程序的一個端口。你可以找到它:[http://unxutils.sourceforge.net/][1]
你會再發出grep命令是這樣的:
grep "From.*me\@my\.com" abc.txt
希望幫助!
嘗試兩個流水線查找命令,就像這樣:
find "[email protected]" abc.txt | find "From:"
包含「[email protected]」,而後者的過濾器他們離開,只有那些包含所有行的行前搜索「發件人」 。
哇,Windows支持命令流水線?每天學些新東西! :) – 2009-06-04 13:47:45
做grep的一套錯誤級別也包括默認? – Tom 2009-06-04 13:17:40