/ / Esecuzione di programmi esterni da MATLAB - matlab, shell, unix

Esecuzione di programmi esterni da MATLAB - matlab, shell, unix

Ecco cosa sto cercando di ottenere:

eseguire un comando / script matlab che avvia un terminale unix e da quel terminale avvia il software esterno. Lo stesso Matlab dovrebbe essere disaccoppiato immediatamente da quel guscio.

Su un sistema Unix, sto attualmente cercando di avviare un programma esterno da MATLAB. So che posso fondamentalmente usare il prompt dei comandi matlab come terminale aggiungendo un ! di fronte a ogni comando. Tuttavia, l'output del programma viene visualizzato anche sul prompt dei comandi matlab e il programma viene ucciso non appena MATLAB viene chiuso.

risposte:

1 per risposta № 1

Per avviare un terminale esterno, chiamare l'emulatore di terminale utilizzando il comando di sistema MATLAB. Se gnome-terminal è il tuo terminale:

system("gnome-terminal");

Per passare parametri al terminale usa -e

system("gnome-terminal -e echo hello World");

Questo terminale si chiuderà immediatamente dopo aver terminato la sua esecuzione.

system("gnome-terminal -e "bash -c "echo Hello World; exec bash""");

Spero che questo ti aiuti. Un simile comando dovrebbe funzionare per altri emulatori di terminale accanto a gnome-terminal.