私のバッチでは、可変量のソースをターゲット宛先にコピーしたいと考えています。
私は次のように定義したい:
@setlocal EnableDelayedExpansion
set source1="C:\folder1"
set target1="f:\folder1"
set source2="C:\folder2"
set target2="f:\folder2"
...
set sourcen="C:\foldern"
set targetn="f:\foldern"
定義された量のフォルダーに依存
set numFolder=5
ループ内のフォルダーを調べたい:
set /a COUNT=0
:LOOP
echo %COUNT%
set /a COUNT+=1
rem write the NAME of the parameter variable (source1,source2 etc.) in nameor
set "nameor=source%COUNT%"
rem write the VALUE of the parameter variable (source1,source2 etc.) into origin ("C:\folder1", "C:\folder2")
set "origin=%nameor%"
echo %origin%
if %COUNT% lss %numFolder% goto LOOP
見せたら
echo %nameor%
source1、source2など、期待どおりの結果が得られますが、
echo %%%origin%%%
提供するだけ
ソース1
期待値の代わりに
「C:\フォルダ1」
DelayedExpansion を使用してこれを解決できると思いましたが、何が欠けていましたか?