job1.ini라는 .ini 파일이 있으며이 .ini에는 배치 스크립트의 특정 지점에 주입하여 작업해야하는 정보가 포함되어 있습니다.
배치 스크립트는 내 .ini 파일과 같은 폴더에 있습니다.
job1.ini의 내용 :
[작업]
코덱 = hevc
비디오 = E : \ folder \ B 1.265
VideoWidth = 1920
VideoHeight = 1080
내 스크립트 :
“C : \ Temp \ mkvmerge.exe”-o “E : \ done.mkv”–title “B 1″ ” here_I_need_that_path_from_ini ” “C : \ Temp \ audio.flac”
또한 나는 이것을 발견했다 :
/ f “tokens = 2 delims ==”% ‘% a (‘findstr Video job1.ini ‘)의 경우 Video = %% a
이 3 조각을 어떻게 결합하여 내 스크립트가 작동합니까?
답변
당신의 라인 :
for /f "tokens=2 delims==" %%a in ('findstr Video job1.ini') do set Video=%%a
findstr도 Videoheight/VideoWidth
항목과 일치 하고 결과 환경 변수가 있기 때문에 작동하지 않습니다.Video=1080
이것을 시도하십시오 (평가되지 않음) :
@Echo off&SetLocal EnableExtensions EnableDelayedExpansion
Set "Video="
for /f "delims=" %%a in ('findstr /i "^Video=" job1.ini') do set "%%a"
if defined Video "C:\Temp\mkvmerge.exe" -o "E:\done.mkv" --title "B 1" "%Video%" "C:\Temp\audio.flac"