轉(zhuǎn)載自 nxhujiee最終編輯 LJ_SunTB批處理中的【預(yù)處理】
━━━━━━━━━━━━━━━━━━━━━━━━━━
如果你對(duì)脫字字符“^”的處理機(jī)制比較熟悉那么可以接著閱讀,否
則請(qǐng)先參考脫字字符的相關(guān)文章。
一、預(yù)處理究竟要做什么?
根據(jù)我的經(jīng)驗(yàn),預(yù)處理要做的是變量值的替換和特殊符號(hào)的處理。究竟先執(zhí)行哪個(gè)操作呢,我認(rèn)為要先進(jìn)行變量值的替換。理由有三:
1、 從邏輯上看
set var=2&echo %var%
類似于這樣的語句,如果說先進(jìn)行特殊符號(hào)處理的話,勢(shì)必要先處理符號(hào)“&”,而“&”是用來連接兩條命令的,這樣一來該行就理所應(yīng)當(dāng)?shù)谋焕斫鉃閮删?,那么我們還要變量延遲干嘛。這里應(yīng)該是
先對(duì)變量var賦值,然后處理特殊符號(hào)“&”。
2、從運(yùn)行結(jié)果看