간단한 사용자 정의 파일을 만들기 위해 간단한 배치 파일을 작성하고 있습니다. 제 질문은 연장 기간에 대한 입력을 마침표와 함께 또는 마침표없이 입력하고 이중 기간 (예 : name1..txt)을 입력하지 않는 방법입니다. 또한 포함 시키거나 포함시키지 말라는 지시 사항을 인쇄하지 않아도됩니다. 도와 줘서 고맙다!변수 하위 문자열 존재시 조건문을 기본으로 만드는 방법
내 접근 방식은 다음과 같습니다. "확장"변수 인 ext의 시작 부분에있는 기간을 찾고 적절한 FOR 루프를 실행하여 파일을 만들고 싶습니다.
setlocal enabledelayedexpansion
set num=
set name=
set ext=
:setnum
set /P "num=Number of files to create?: "
If not defined num Echo.&Echo You must enter a number to continue...&goto:setnum
:setname
set /P "name=Enter "root" name of file:"
If not defined name echo.&Echo You must enter the name of your new files to continue...&goto:setname
:setext
set /P "ext=What will be the file extension?:"
If not defined ext echo.&Echo You must enter an extension to continue...&goto:setext
pause
%ext:~0,1% | FINDSTR /R "[.]" && pause & goto:extNoDot
%ext:~0,1% | FINDSTR /R "[.]" || pause & goto:extYesDot
:extNoDot
for /L %%a in (1,1,%num%) do (echo %%a >> !name!%%a%ext%)
goto:eof
:extYesdot
for /L %%a in (1,1,%num%) do (echo %%a >> !name!%%a.%ext%)
goto:eof
:eof
EXIT /b
감사합니다. 더 우아한 솔루션. 그리고 어쨌든 두 findstr 줄을 명확히 해 주셔서 감사합니다. 에코가 필요하다는 것을 깨닫지 못했습니다. 나를 구 했어! – Glycoversi