Help with command system
1 次查看(过去 30 天)
显示 更早的评论
I need some help here on this point : I want to run multiple jobs at the same time from matlab on my mac. This works fine using this command system('"./Astra"charge &').
The problem is that using '&' I can indeed run multpile jobs but, they are launched as background tasks and I cannot see their evolution. I would like that for each job a terminal is laucnhed in which the job run. If I don't use '&' I can observe the job evolution but, since it run in the matlab window, it is one per one and I cannot tun multiple jobs at the same time.
Could someone solve this isuse ?
Thanks !!
0 个评论
采纳的回答
Walter Roberson
2021-12-17
At least for now, you can use applescript
!osascript -e 'tell app "Terminal" to do script "./Astra charge"'
Except it looks like your starting directory is likely to be your home directory, so you probably need to specify a full path.
I see a claim that you can put two commands separated by semi-colon -- but I also see it claimed that two is the limit.
The reply from the above would look something like
tab 1 of window id 6550
which is information that can be used to control the application.
5 个评论
Walter Roberson
2021-12-19
编辑:Walter Roberson
2021-12-20
The ! command can only ever have a constant string after it.
The ! command is short-hand for using system() but system() is more general.
cmd = sprintf('osascript -e ''tell app "Terminal" to do script "Astra ''%s''"', name);
[status, output] = system(cmd)
更多回答(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!