물론, 사용자의 입력 파일을 상정하는 것은 "C : \ input_file.txt", 무슨 일이 일어나고 있는지 볼 수있는이 같은 실행 뭔가 ... 하루의 끝에서
FOR /F "tokens=* delims=? usebackq" %%A IN ("C:\input_file.txt") DO echo %%A
FOR /F "tokens=* delims=? usebackq" %%A IN ("C:\input_file.txt") DO xcopy %%A
pause
당신은 생각이 필요 ...
FOR /F "tokens=* delims=? usebackq" %%A IN ("C:\input_file.txt") DO xcopy %%A
설명 ...
문서 For /F 루프와 xcopy
For /F
입력 파일을 한 줄씩 반복합니다. 각 줄마다 줄을 조각으로 나눕니다. 이 조각들은 "토큰 (tokens)"이라고 불립니다. 조각은 deliminator (delims)라고하는 문자로 인식됩니다. 이렇게하면 각 줄의 개별 부분으로 작업 할 수 있습니다. 그러나, 귀하의 경우, 귀하의 라인을 분할하지 않아도됩니다. 그들은 이미 인수로 형식화되어 있습니다. 따라서 "?"와 같이 더 불분명 한 불법 파일 경로 문자를 사용하십시오. 당신의 구속 자로. 당신이 거기에 있지 않을 것이라고 내기 할 수 있기 때문에, 전체 라인을 하나의 토큰으로 얻을 수 있습니다.
토큰을 설정하면 모든 토큰을 가져 오지만 토큰이 1 개인 경우 방금 설명한 것처럼 tokens=1
일 수 있습니다.
usebackq
입력 파일 경로 주위의 따옴표를 사용하여 경로의 공백을 처리 할 수 있도록하는 것이 좋습니다.
그런 다음 For /F
의 명령 부분을 가지고 Echo
또는 xcopy
과 같은 명령을 사용하고 인수로 토큰을 전달할 수 있습니다. 앞서 언급했듯이 이미 텍스트가 여러 개의 인수로 서식이 지정되어 있기 때문에 전체 텍스트 줄을 단일 토큰으로 전달할 수 있습니다.
또한 작업 시스템이 xcopy를 사용하도록 설계된 것처럼 보입니다. 따라서이 설정을 그대로 사용하는 것이 가장 바람직하지만 RoboCopy is a good alternative입니다.
UNC 경로는 대개 두 개의 슬래시로 시작합니다. \\. 따라서 소스, 대상을 사용하여 구분 된 파일을 만들고 해당 파일을 읽는'FOR/F' 명령을 사용할 수 있습니다. XCOPY 대신 ROBOCOPY를 사용하는 것이 좋습니다. – Squashman
지금까지 시도한 것은 무엇입니까, 어디서 붙어 있습니까? – aschipfl