이 문제는 몇 시간 동안 저를 괴롭 혔습니다. 나는 누군가가 약간의 빛을 비춰주기를 바랍니다. 기본적으로 폴더 안에있는 모든 파일 (특정 유형의 파일)을 스캔하려고합니다 (내부에 하위 폴더가 없으므로이 경우 걱정할 필요가 없습니다). 파일 이름을 가져 와서 모두를 하나의 문자열로 연결합니다. 폴더가 두 개의 파일, a.xml, b.xml 및 c.xml이있는 경우, 나는 문자열을 보이는 싶어일괄 파일 이름 문자열 연결
-a a.xml -a b.xml -a c.xml
같은아래 코드는 제 코드입니다.
copy *.xml C:\FTP
setLocal Enabledelayedexpansion
set "directory=C:\temp"
set "attachment= "
set "a= -a "
for %%n in (%directory% *.xml) DO (
set "attachment=!attachment! %a% %directory%\%%n "
echo.%attachment%
)
setlocal disabledelayedexpansion
echo.%attachment%
출력이 I 화상 http://imgur.com/vpUUe05 가지는 문제에 도시되어있다 첫 번째 루프 밖으로 아무것도 인쇄에 대한 모든 에코 . 그 빈 줄에 표시된대로. 내가 원하는 마지막 문자열, 즉 첨부 파일의 초기 부분 문자열이 포함되어 있습니다.
-a C:\temp\C:temp.
이 파일은 실제로는 파일이 아닙니다. 내가 원하는 마지막 문자열은이 하위 문자열이없고 그 뒤에있는 문자열이어야합니다. 그건 그렇고, 폴더 안에 파일이 없으면 ""와 같은 빈 문자열에만 "첨부 파일"문자열을 넣기를 원합니다. 누구든지 나를 도울 수 있습니까? 고마워요!
안녕, 정말 감사합니다
다음은 올바른 코드입니다! 그것은 작동합니다. echo % .attach %와 echo .applet!의 차이점을 물어볼 수 있을까요? %% ~ NXn은 무엇입니까? 일괄 처리 파일은 너무 많은 약어가있는 것처럼 보입니다. 정말 흐리게 보입니다. 이 축약어 목록을 어디에서 찾을 수 있습니까? 고맙습니다. – Rookie