ループが許可するtokens=1,2,...
オプションの一部を追加で使用する必要があります。for
これは、おそらくあなたが望むことを行います:
for /f "tokens=1,2,3,4,5,6,7,8,9,10,11,12 delims=;" %a in ("%PATH%") ^
do ( ^
echo. %b ^
& echo. %a ^
& echo. %c ^
& echo. %d ^
& echo. %e ^
& echo. %f ^
& echo. %g ^
& echo. %h ^
& echo. %i ^
& echo. %j ^
& echo. %k ^
& echo. ^
& echo. ...and now for some more... ^
& echo. ^
& echo. %a ^| %b ___ %c ... %d ^
& dir "%e" ^
& cd "%f" ^
& dir /tw "%g" ^
& echo. "%h %i %j %k" ^
& cacls "%f")
この例では、最初の 12 個のトークン (= %path% からのディレクトリ) のみを処理します。使用される各トークンの明示的な列挙を使用します。トークン名は大文字と小文字が区別されることに注意してください。%a は %A とは異なります。
スペースを含むパスを保存するには、すべての%x をこの "%i" のように引用符で囲みます。ここでは、トークンをエコーするだけなので、それはしませんでした。
s.th を行うこともできます。このような:
for /f "tokens=1,3,5,7-26* delims=;" %a in ("%PATH%") ^
do ( ^
echo. %c ^
& echo. %b ^
& echo. %a ^
& echo. %d ^
& echo. %e ^
& echo. %f ^
& echo. %g ^
& echo. %h ^
& echo. %i ^
& echo. %j ^
& echo. %k )
これはトークン 2、4、6 をスキップし、小さなショートカット (" 7-26
") を使用して残りのトークンに名前を付けます。今回は %c、%b、%a が逆の順序で処理され、最初の例と比較して異なるトークンを「意味する」ことに注意してください。
したがって、これは確かにあなたが求めた簡潔な説明ではありません。しかし、おそらく例はもう少し明確にするのに役立つでしょう...