簡體   English   中英

使用FIND命令使用cmd.exe從一行中查找兩個字符串

[英]using FIND command to find two string from one line with cmd.exe

如何使用FIND(cmd.exe默認命令)從文件安全地檢測以下字符串,而名稱minnie可以是任何東西? 它只是FROM:行上有me@my.com。

From: "Minnie" <me@my.com>

不應混入此TO行:

To: <me@my.com>

例如,此批處理文件行無法正常工作:

find "me@my.com" abc.txt

嘗試兩個流水線查找命令,如下所示:

find "me@my.com" abc.txt | find "From:"

前者搜索包含“ me@my.com”的所有行,后者過濾它們以僅保留那些包含“ From:”的行。

您可以使用findstr代替具有更高級功能(例如正則表達式匹配)的find

findstr /r /c:"^From:.*<me@my.com>" test.txt

僅當行以“發件人:”開頭時,才會找到指定的電子郵件地址。

至少從Windows 2000開始,默認情況下還包括findstr

我真的不認為您將無法使用find來完成此任務,因為find僅查找文字匹配項,而不能使用通配符或正則表達式。

如果您有此選項,則可以安裝UnxUtils軟件包並使用grep進行安裝。 這是Win32常用Unix實用程序的端口。 您可以在以下位置找到它:[ http://unxutils.sourceforge.net/] [1 ]

然后,您將發出一個grep命令,如下所示:

grep "From.*me\@my\.com" abc.txt

希望有幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM