Trouble when calling a bat file
이전 댓글 표시
i have a python script that running perfectly using the anaconda env.
i created a bat file that call to my python script, and when i double clicking the bat file it running perfectly also.
also when i call to the bat file from cmd it works fine.
BUT, when i call to the bat file from matlab2021a usung the system() it gives this error message:
"'cmd' is not recognized as an internal or external command,
operable program or batch file."
and also:
"RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work
warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning) "
By the way, i alread add my PATH to matlab.
The biggest thing is that last night i could have run the bat file from matlab, woke up this morning and got that issue before change nothing:(
Hope for answers:) Thanks
댓글 수: 11
Image Analyst
2022년 3월 1일
Show how you make up the batch file path and pass it to system(), for example
batFullFilePath 'C:\my batch.bat'
dataFullFileName = 'C:\myMovie.mp4'
commandLine = ['"' batFullFilePath '" "' dataFullFileName '"'];
system(commandLine);
Kfir Weissman
2022년 3월 1일
Kfir Weissman
2022년 3월 1일
Kfir Weissman
2022년 3월 1일
Walter Roberson
2022년 3월 1일
If it literally says "cmd" then you are running on MS Windows in a version before Windows XP.
... Mind you at the moment I could not swear that Windows 11 still has cmd.exe but I would think it highly likely it does.
Kfir Weissman
2022년 3월 1일
Benjamin Thompson
2022년 3월 1일
I have Windows 10 and this works for me:
>> !cmd
Microsoft Windows [Version 10.0.19042.1526]
(c) Microsoft Corporation. All rights reserved.
C:\Users\ThompsonBC\Documents\MATLAB>exit
exit
If you echo the PATH in MATLAB the location of cmd.exe on your system needs to be included:
>> !echo %PATH%
C:\Program Files\MATLAB\R2021b\bin\win64;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\MATLAB\R2021b\runtime\win64;C:\Program Files\MATLAB\R2021b\bin;
>>
Kfir Weissman
2022년 3월 1일
Kfir Weissman
2022년 3월 1일
Walter Roberson
2022년 3월 1일
Which operating system are you using? Which MATLAB release are you using?
If you are using Windows, then check inside C:\Windows\System32 to see if cmd.exe is there.
What shows up in MATLAB if you ask
getenv('PATH')
Kfir Weissman
2022년 3월 1일
편집: Kfir Weissman
2022년 3월 1일
답변 (1개)
Image Analyst
2022년 3월 1일
Actually I don't think this will work (what you say you are using):
system(myBat.bat)
You either have to pass in a variable, or pass in your batch filename enclosed in single or double quotes:
system("myBat.bat")
카테고리
도움말 센터 및 File Exchange에서 Startup and Shutdown에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!