Is it possible to programmatically check whether MATLAB has been started with the "-sd" option?
조회 수: 4 (최근 30일)
이전 댓글 표시
I have a program that needs to behave differently depending on whether MATLAB was started with the "-sd" option (sets initial working folder) or not. However, I cannot determine a way to programmatically check this.
댓글 수: 4
dpb
2022년 9월 18일
TMW hasn't provided a link to the command line -- I see a couple alternatives...(I've not tried either, just possible approaches that come to mind at the moment).
- Use a batch file containing the startup command and have it set an environment variable that startup.m can check, or
- Write a mex command that returns the command line and use the -r option to dispatch it. I don't know that this will work or not...
채택된 답변
Jan
2022년 9월 18일
PID = feature('getpid');
[status, out] = system(sprintf('ps -p %d -o args', PID))
Parsing the char vector out is not trival: E.g. he name of the logfile might contain the substring ' -sd '. Will masking substrings included in double quotes avoid such troubles?
Alternatively you can avoid -sd but use a dedicated function instead:
matlab -r "cd('/your/folder')"
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Startup and Shutdown에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!