[英]Windows batch (cmd.exe) command line parameters and string manipulation
[英]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.