|
Tobi aus Hannover |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 17.02.2009, 12:54
Titel: Auf die Dos Box warten
|
 |
|
 |
|
Hallo zusammen!
Danke für euer Forum und die toll Hilfe die ich durch die vielen Beiträge im Stillen schon bekam.
Zu diesem Problem konnte ich leider noch keine Lösung finden. Es ist wie folgt:
Ich habe ein m-file zur Verarbeitung von Messdaten erstellt. Mit dem Befehl winopen (abc_1) führe ich eine Programm, dass in der Dos-Box abläuft aus und halte Matlab mit waitfor(push_the_button) an. Ich muss auf abc_1 warten, da es Daten produziert, die anschliessend mit Matlab weiter verarbeitet werden sollen. push_the_button ist nur ein gui mit einem 'Weiter-Knopf'.
Anschliessend muss ich ein weiteres Programm in einer Dos-Box ausführen. (efg_2) Bisher habe ich hier ebenfalls winopen(efg_2) und waitfor(push_the_button) genutzt, da auch hier auf die Daten zur Weiterverarbeitung gewartet werden muss. Diese Variante ist eher unangenehm, da das Programm in meinem Skript zwischen 10 und 20 mal gestartet wird und ich nun immer wie ein Laboräffchen vor dem Bildschirm sitze und einen 'Weiter-Knopf' drücken muss. Eine Pause von x-Sekunden kommt leider nicht in Frage, da die Ausführung des Programmes unterschiedlich lange dauert.
Ich möchte Matlab gern warten lassen, bis das Programm in der Dos-Box fertig ist. Kann ich den Effekt nutzen, dass sich die Dos-Box nach Beendigung des Programms automatisch schliesst?
Ich bin für alle Anregungen, die mich nicht mehr alle paar Minuten auf einen 'Weiter-Knopf' warten lassen, sehr dankbar.
Bis dahin drücke ich mal fleissig weiter...
Vielen Dank für die Hilfe,
Tobias
|
|
|
|
|
outsider |

Forum-Meister
|
 |
Beiträge: 806
|
 |
|
 |
Anmeldedatum: 03.09.07
|
 |
|
 |
Wohnort: München
|
 |
|
 |
Version: R2012b
|
 |
|
|
 |
|
Verfasst am: 17.02.2009, 21:22
Titel:
|
 |
Versuche statt WINOPEN das Programm mit dem DOS-Befehl zu starten
mehr in der Hilfe.
>> help dos
MfG
|
|
|
Tobi aus Hannover |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 05.03.2009, 13:16
Titel: Verzeichnisstruktur
|
 |
|
 |
|
Hoi!
Ich habe probiert den Dos Befehl zu nutzen, scheitere aber anscheinendan meiner Verzeichnisstruktur.
Meine bisherige Version funktioniert wie folgt. Ich lasse Matlab mit dem winopen Befehl die Datei ausführen. Anschliessend warte ich 5 Sekunden, dann soll Matlab versuchen die Datei zu löschen. Falls das Programm noch läuft funktioniert das ja nicht. Dann soll er gucken ob die Datei noch vorhanden ist. Leider kenne ich keinen besseren Befehl als fopen dafür. (Bitte einen Tip wie es besser geht.) Ist die Datei beendet und damit nicht mehr im Eingriff kann die Datei gelöscht werden und fopen gibt eine -1 zurück. Die Schleife in der diese Routine abläuft wird geöffnet und das Programm schreitet voran.
Geschickt finde ich diese Variante nicht, ich würde es als quick-and-dirty beschreiben. Etwas besseres fiel mir nicht ein.
Wenn ich den wie von outsider vorgeschlagenen Dos-Befehl nutze rächt sich meine Verzeichnisstruktur, da einer der Ordner ...\Dos Dateien\dos-datei.exe heisst und Matlab sagt das die Datei ...\Dos nicht gefunden werden kann. Das Leerzeichen kann ich leider nicht mehr aus dem Verzeichnispfad entfernen.
Kann ich Matlab die Datei trotz des anscheinend für Matlab nicht einzulesenden Pfades aufrufen?
Ich bin für jeden Tip sehr dankbar.
Schöne Grüsse,
Tobias
|
|
|
steve |

Ehrenmitglied
|
 |
Beiträge: 2.029
|
 |
|
 |
Anmeldedatum: 03.09.07
|
 |
|
 |
Wohnort: Wien
|
 |
|
 |
Version: R2024a
|
 |
|
|
 |
|
Verfasst am: 05.03.2009, 13:30
Titel:
|
 |
Moin,
ohne es probiert zu haben, versuch mal folgendes:
Zumindest funktioniert das im Terminal-Window...
Gruß
Alex
_________________
>> I told me to.
____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
|
|
|
Epfi |

Forum-Meister
|
 |
Beiträge: 1.134
|
 |
|
 |
Anmeldedatum: 08.01.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 05.03.2009, 14:01
Titel:
|
 |
DOS ist tot - die Kommandozeile im Windows ist auch Windows, sieht nur aus wie DOS ;)
Leerzeichen in Verzeichnisnamen kann man grundsätzlich dadurch ermöglichen, dass man den Namen in 'Hochkommas' setzt.
Was das Prüfen auf Existenz angeht:
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|