mam ten for
pętlę, aby uzyskać listę nazw katalogów:Uzyskiwanie podciągu tokena w pętli for?
for /d %%g in (%windir%\Assembly\gac_msil\*policy*A.D*) do (
echo %%g
)
wyjściowa:
C:\WINDOWS\Assembly\gac_msil\policy.5.0.A.D
C:\WINDOWS\Assembly\gac_msil\policy.5.0.A.D.O
C:\WINDOWS\Assembly\gac_msil\policy.5.20.A.D.O
C:\WINDOWS\Assembly\gac_msil\policy.5.25.A.D.O
C:\WINDOWS\Assembly\gac_msil\policy.5.35.A.D.O
C:\WINDOWS\Assembly\gac_msil\policy.5.55.A.D.O
C:\WINDOWS\Assembly\gac_msil\policy.5.60.A.D.O
C:\WINDOWS\Assembly\gac_msil\policy.5.70.A.D.O
C:\WINDOWS\Assembly\gac_msil\policy.6.0.A.D.O
chcę uzyskać nazwy folderów zaczynające się od „polityki”, ale echo %%g:~29
nie działa. Próbowałem również set x=%%g
, a następnie echo %x:~29%
i nadal nie działa.
Jak zatem uzyskać podciąg z tokena w pętli for
?
przydatnych wskazówek tutaj, dzięki. Pomógł mi napisać scenariusz, który wydawał mi się niemożliwy. – Angst
@Aacini Czy możliwe jest wyodrębnienie podciągu bezpośrednio z parametru '%% g', bez używania pomocniczej zmiennej' x' i bez włączenia DelayedExpansion? –
@AlfredoCapobianchi: Krótka odpowiedź: Nie. Długa odpowiedź: jeśli uważnie czytasz pytanie, powinieneś zapamiętać to zdanie: _ "echo %% g: ~ 29' nie działa" _. – Aacini