2014-11-01 94 views
0

我是一個先進的ish批處理程序員,並且知道轉義字符。但是,經過幾個小時的搜索後,我找不到答案。這裏是我的代碼片段:是否可以批量轉義冒號?

for /l %%a in (1,1,%a%) do (
set /a e=%%a*100/%a% 
cls 
echo %date%%time% Creating %a%x%b% matrix using %c%... 
echo !e!%% complete. 
for /l %%b in (1,1,%b%) do set /a a%%a%%b=%%a%c%%%b 
) 

這工作正常,但下一個片段給了我一個「:在這個時候是意外的。」。錯誤。

for /l %%a in (1,1,%a%) do (
set /a e=%%a*100/%a% 
cls 
echo %date%%time% Storing %a%x%b% matrix using %c% to %d% 
echo !e!%% complete. 
for /l %%b in (1,1,%b%) do echo Cell (%%a,%%b): !a%%a%%b!>>%d% 
) 

請幫忙。我不知道如何讓冒號工作。

回答

3
for /l %%b in (1,1,%b%) do echo Cell ^(%%a,%%b^): !a%%a%%b!>>%d% 

應該給你想要的結果。

有趣的是,它不是需要轉義的冒號,而是括號。這是因爲批次在外部for循環內部看到),並認爲這是循環的結尾。

+2

正確,但左括號的轉義沒有必要,但仍然無害 – jeb 2014-11-01 09:32:02

相關問題