WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Software wird mit unix(...) Befehl nicht geöffnet

 

Grünschnabel
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 80
Anmeldedatum: 01.10.13
Wohnort: ---
Version: MATLAB R2013a
     Beitrag Verfasst am: 23.03.2014, 09:03     Titel: Software wird mit unix(...) Befehl nicht geöffnet
  Antworten mit Zitat      
Hallo Community,
ich habe ein kleines Problem, aber es hat mir schon den ganzen letzten Tag versaut... Könnt Ihr mir vielleicht weiterhelfen?

Aus meinen Matlabskript möchte ich die Dosbox öffnen, die Software.exe automatisch ausführen lasse und im Anschluss die Dosbox wieder schließen.

Im Linux Terminal verwende ich dazu folgenden Befehl:
Code:

dosbox Software.exe -exit
 

Der kleine Test mit dem Befehl funktioniert: die Dosbox wird geöffnet, die Software.exe wird ausgeführt und im Anschluss wird die Dosbox wieder geschlossen. Prima.
Jetzt will ich das in Matlab einbauen, dies mache ich wie folgt:
Code:

StartDOSBox = 'dosbox Software.exe -exit'
unix(StartDOSBox);  
 


Leider wird der Befehl jetzt nicht richtig ausgeführt. Habt Ihr eine Idee?!?
Vielen Dank im Voraus.

Der Grünschnabel grüßt aus Japan
Private Nachricht senden Benutzer-Profile anzeigen


denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 23.03.2014, 22:33     Titel:
  Antworten mit Zitat      
Hallo

die Frage ist halt was hast du in Shell anders gemacht, als in Matlab Command?
Hast du Terminal in speziellen Ordner aufgemacht? Stimmen die Pfade?
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 23.03.2014, 23:01     Titel:
  Antworten mit Zitat      
Hallo,

und vor allem: was bedeutet "nicht richtig" ausgeführt?
Gar nicht? Anders als sonst? Inwiefern?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Grünschnabel
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 80
Anmeldedatum: 01.10.13
Wohnort: ---
Version: MATLAB R2013a
     Beitrag Verfasst am: 25.03.2014, 15:09     Titel:
  Antworten mit Zitat      
Hallo denny, hallo Harald,
vielen Dank für Eure Unterstützung! Vorab: Ich habe einen Linux und einen Mac Rechner auf dem jeweils Matlab 2013a installiert ist. Mein Code soll natürlich zum Schluss auf beiden System laufen. Hier die Fehler des Mac Rechners:

Ich nutze folgenden Code:
Code:
StartDOSBox = 'open -a DosBox.app ./Software.exe'
unix(StartDOSBox);  

und es geschieht folgendes:
- Die Dosbox wird automatisch gestartet,
- Die Software wird automatisch gestartet und und richtig ausgeführt.
Bis hierhin läuft alles ohne Fehler.

Zweiter Ansatz mit folgendem Code:
Code:
StartDOSBox = 'open -a DosBox.app ./Software.exe -exit'
unix(StartDOSBox);  

Es erscheint folgende Fehlermeldung:
Code:
open: invalid option -- x
Usage: open [-e] [-t] [-f] [-W] [-R] [-n] [-g] [-h] [-b <bundle identifier>] [-a <application>] [filenames] [--args arguments]
Help: Open opens files from a shell.
      By default, opens each file using the default application for that file.  
      If the file is in the form of a URL, the file will be opened as a URL.
Options:
      -a                Opens with the specified application.
      -b                Opens with the specified application bundle identifier.
      -e                Opens with TextEdit.
      -t                Opens with default text editor.
      -f                Reads input from standard input and opens with TextEdit.
      -F  --fresh       Launches the app fresh, that is, without restoring windows. Saved persistent state is lost, excluding Untitled documents.
      -R, --reveal      Selects in the Finder instead of opening.
      -W, --wait-apps   Blocks until the used applications are closed (even if they were already running).
          --args        All remaining arguments are passed in argv to the application's main() function instead of opened.
      -n, --new         Open a new instance of the application even if one is already running.
      -j, --hide        Launches the app hidden.
      -g, --background  Does not bring the application to the foreground.
      -h, --header      Searches header file locations for headers matching the given filenames, and opens them.
 

- Die Dosbox wird erst gar nicht gestartet.

Und mein dritter Ansatz:
Code:
StartDOSBox = 'open -a DosBox.app ./Software.exe --args -exit'
unix(StartDOSBox);  

Es geschieht folgendes:
- Die Dosbox öffnet automatisch (es passiert nichts weiter mit der Dropbox),
- Die Software wird nicht gestartet
- Die Dosbox schließt nicht.

Falls Ihr die Ergebnisse des Linux Rechners haben wollt, kann ich Sie morgen posten.

Vielen Dank im Voraus.
Der Grünschnabel grüßt aus Japan
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.