Bir süredir bununla mücadele ediyorum ve nedenini çözemiyorum.
Bu toplu iş dosyasına sahibim:
@echo on
setlocal enabledelayedexpansion
for /F %%x in (FileList.txt) do (
for /L %%i in (1,1,16) do (
if %%i LSS 10 (set ctr=0%%i) else (set ctr=%%i)
echo !ctr!
set target = \\Server-!ctr! password /user:domain\username
echo %target%
echo net use z: %target%
echo copy %%x "z:%%~pnx" /Y
echo net use z: /delete
)
)
Ctr değişkenim uygun şekilde ayarlanmış, ancak birleştirmeyi denediğimde, tek elde ettiğim şey: \ Server-! Ctr! parola / kullanıcı: domain \ username. Değerini değil, sadece değişmez karakterleri döndürmek için%! Ctr!%,% Ctr%, %% ctr, %% ctr %% öğelerini denedim. Yeterince, set komutunu aldığımda yankı! Ctr! değeri döndürür. Ayrıca set parametrelerini tırnak işaretleri içine almayı da denedim - aynı sonuçlarla, sadece tırnak içine alın.
Neyi kaçırıyorum?