@ Barış, bitte benutzen Sie die Suchleiste vor der Frage doppelte Fragen.
Im Skript werden Sie delayedexpansion
, müssen sie anfangen, setlocal enabledelayedexpansion
verwenden.
@echo off
setlocal enabledelayedexpansion
set str=abcd
for /L %%i in (1,1,4) do set str=!str!!str!
echo %str%
Hinweis %str%
wird !str!
(! Bedeutet, die Variable auf Befehl Laufzeit zu erweitern, nicht die Zeit auslaufen.)
Ein anderer Weg, dies zu tun, von @JosefZ erwähnt wird
for /L %%i in (1,1,4) do call set str=%%str%%%%str%%
Dies verwendet call
's spezielle Variable Expansion Trick.
Sie brauchen [verzögerte Erweiterung] (https://ss64.com/nt/delayedexpansion.html) – npocmaka
'für/L %% i in (1,1,4) do call set str = %% str %% %% str %% 'sollte den Trick machen, unabhängig von verzögerter Expansion aktiviert/deaktiviert. – JosefZ