
[已解決]如何區(qū)分批處理for命令兩種實現(xiàn)形式的區(qū)別最后由 lta3015 于 -6-7 10:09各位好!今天在嘗試使用for語句時,發(fā)現(xiàn)兩種實現(xiàn)形式輸出差別很大,求高手解釋,多謝~~~代碼1:
運行結果(錯誤):(if EP3SE80 == EP3SE80 ( set device_name=EP3SE80 & echo!device_name! & goto :FOUND ) ) !device_name!NOT OK代碼2與代碼1唯一區(qū)別:nclick="copycode($('code0'));">復制代碼
- @echo off
- setlocal enabledelayedexpansion
- set DEVICE=EP3SE80
- type 1.txt | for /f tokens=2 %%a in ('findstr EP[0-9]S* ')do (
- if %%a == %DEVICE% (
- set device_name=%%a
- echo !device_name!
- goto :FOUND
- )
- )
- echo NOT OK
- goto :P_END
- :FOUND
- echo OK
- :P_END
- pause
運行結果(正確):EP3SE80OK1.txt里面的內(nèi)容:12425436SDASDEP3SE801SADCDDFSF4ASF我的問題:1.兩種代碼的執(zhí)行方式的差別在哪里呢?為什么代碼1明明能夠正確獲取指定字符串,可是判斷語句無法正確執(zhí)行?2.為什么代碼1執(zhí)行后回顯示命令語句呢,我已經(jīng)在代碼初始位置處設置了@echo off?如何避免回顯?3.如何采用代碼1的方式得到代碼2的執(zhí)行結果?nclick="copycode($('code1'));">復制代碼
- for /f tokens=2 %%a in ('findstr EP[0-9]S* 1.txt')

