0

「パス」環境変数をバッチ ライン コマンドで解析しようとしています。私が達成したいのは、「Path」変数の各部分文字列を別の行に出力することです。

以下では、セミコロン「;」を使用して「パス」の各トークンを出力できます。区切りとして:

For /F "tokens=* delims=;" %i in ("%Path%") do @echo %i

しかし、私の出力は C:\blabla1\bin C:\blabla2\bin C:\blabla3\bin C:\blabla4\bin です。改行を連結したいのですが、それができません。

助言がありますか?ありがとう

ps別の.batファイルに保存されたスクリプトの使用を避けて、単一のコマンドライン内でこれを実現したいと思います

4

2 に答える 2

3

;名前にパスがないと仮定して、これを試してください:

@ECHO OFF &SETLOCAL
SET "mypath=%path%"
SET mypath=%mypath:;=";"%
FOR %%a IN ("%mypath%") DO ECHO %%~a
于 2013-07-24T15:24:06.597 に答える
0
Call :Entry %Path%
GoTo :EOF

:Entry
For /F "Tokens=1,* Delims=;" %%i In ("%1") Do (
    Set Entry=%%i
    Set Remaining=%%j
)
Rem Do something with %Entry% ...
If Defined Remaining Call :Entry %Remaining%
GoTo :EOF
于 2013-07-24T15:24:35.110 に答える