此文件完美地工作。
你需要找到你的文字的命令行是
yourbatch yourtextfile.txt "I have breakfast"
如果執行
yourbatch yourtextfile.txt I have breakfast
則因爲空間是一個分隔符,將只搜索I
,爲了尋找一個空格分隔的字符串,您需要"
報價字符串"
同樣,就此而言,w如果文件名包含空格,則使用文件名。
yourbatch "your text file.txt" "I have breakfast"
%%1 is "your text file.txt"
%%2 is "I have breakfast"
包括引號。
要刪除引號,如果你想,你會使用%〜2
所以 - 你可以ECHO
ECHO with quotes:%2 and without: %~2
ALSO:小心
If %ERRORLEVEL% EQU 0 echo text %2 is Present
If %ERRORLEVEL% EQU 1 echo text %2 is not Present
ECHO
是少數不改變errorlevel
的命令之一。很多人改變它,所以例如,如果你寫
如果%ERRORLEVEL%EQU 0回聲Y |找到 「X」> NUL 如果%ERRORLEVEL%EQU 1個回聲文本%2不存在
那麼如果發現echo Y|find "x" >nul
是因爲上一步中的errorlevel
爲0,那麼因爲echo Y|find "x" >nul
將errorlevel設置爲1,第二行也將被執行。
這是偉大的!也感謝細節。 – tamo 2013-04-07 12:55:23