2014-02-23 4 views
0

% PATH %을 (를) 가져 와서 쉼표를 붙이고 싶습니다.배치 파일로 PATH 반복하기

"C:\Program Files\a";"C:\Program Files\b";"C:\Program Files(x86)\c" 

이유는, 물론, 그 공간이지만, 그 지점 이외의에

C:\Program Files\a;C:\Program Files\b;C:\Program Files(x86)\c 

에서 즉,. 내가 현재 가지고 :

@ECHO OFF 

Setlocal EnableDelayedExpansion 

FOR /f "tokens=1 delims=^; eol=¬" %%G IN ("%PATH%") DO @ECHO "%%G"; 

그러나, 이것은 단지 나에게 내 경로의 첫 번째 부분을 제공 : 올바른 방향으로의 한 단계입니다,하지만 어떻게 내가 모든을 제공하기 위해 어떻게해야합니까

"C:\Program Files\a"; 

휴식? 또한 전체 출력을 단일 변수로 변환하여 다른 명령으로 전달할 수있는 방법은 무엇입니까?

답변

1
@echo off 
set "p=%path%" 
set "p=%p:"=%" 
set p="%p:;=";"%" 
echo %p% 
+0

그래, 내가 그것을 이길를. 아니면 단지'ECHO '% PATH :; = ";"% "'. – mbroshi

+1

@mbroshi 기존의 따옴표를 삭제해야합니다. 이것은 다른 행입니다. – foxidrive

0

이 시도 :

@ECHO OFF &SETLOCAL disableDelayedExpansion 
SET "dPath=C:\Program Files\a;C:\Program Files\b;C:\Program Files(x86)\c" 
FOR %%a IN ("%dPath:;=";"%") DO ECHO(%%~a 

출력 :

 
C:\Program Files\a 
C:\Program Files\b 
C:\Program Files(x86)\c 
+0

경로에 이미 따옴표가있을 수 있으며 필요한 정보가 있어야합니다. – foxidrive

+0

@foxidrive yes 그리고'PATH'는 세미콜론을 가질 수 있습니다 : | 코멘트 주셔서 감사합니다 :) – Endoro

관련 문제