저는 일괄 스크립팅을 처음 접했으니 참아주십시오! windows xp 나는 실행 파일이 input.in
과 output.out
입니다. 입력 파일을 읽고, 하나 이상의 행을 수정하고, .exe
을 실행하고 입력 파일의 변경 내용에 따라 이름이 달라지는 폴더에 출력을 저장하는 일괄 처리를 만들고 싶습니다. Windows 다른 입력 파일을 사용하여 실행 파일을 실행하는 일괄 파일
32.0d0 ! first parameter
54.0d5 ! second parameter
1.5d-1 ! third parameter
11.0d0 ! fourth parameter
및 I의 범위에 제 파라미터를 변경할 0.0- 단계 0.1> 1.0
@echo off
setlocal EnableDelayedExpansion
set ReplaceLine1=2
set inpfile=input.in
set tempfile=input.temp
set increment=0.1
if exist "%tempfile%" del "%TempFile%"
for /L %%i in (1,1,11) do (
set /A param_value=(%%i-1)*increment
set /A Cnt2=0
for /f %%a in (%inpfile%) do (
set /A Cnt2+=1
if !Cnt2! geq %ReplaceLine1% echo %param_value% >> "%tempfile%" else echo %%a >> "%tempfile%"
)
copy /y "%tempfile%" "%inpfile%"
MD .\"param_value"
executable.exe < "%tempfile%" >> .\"param_value"
)
가 수행 위의 모든 기회가 어디 somkewhere 가까이에 내가 linke 갈 것이라고?
(당신의 출력 작업 ... 파일이 아닌 디렉토리에 될 것이라고 지적)는 소수점 데이터 유형을 떠 지원합니다. 그리고 나는 새로운 Win 버전을 가지고 있으며 XP에서 무료로 얻을 수 있다고 믿는다. –
@Peter Wright 빠른 답변을 주셔서 감사합니다! 나는 공부하고 있습니다. 코드 : 나는 명령 SET value =! value : ~ 0, -1을 추측한다! : value : ~ -1! 실제 넘버링을 다루는 것이지 .... 맞다. ? – user2148834
배치는 항상 문자열에서 작동합니다. 수학 함수는 숫자 문자열을 숫자 표현으로 변환 한 다음 다시 변환합니다. 다시 문자열로. '% var %'는 변수'var'의 값을 나타냅니다. FOR 명령이 발생하면 FOR에서 DO를 끝내는 닫는 괄호까지 여러 줄이 떨어져있는 전체 명령이 구문 분석됩니다. 그 과정의 일부로,'% var %'는 그 당시의'var' 값 즉 PARSE-TIME 값으로 대체됩니다. – Magoo