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

Pfad eines Programmes auswählen und in *.bat-Datei schreibe

 

Cope
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 77
Anmeldedatum: 21.02.14
Wohnort: ---
Version: R2013b
     Beitrag Verfasst am: 01.04.2014, 16:32     Titel: Pfad eines Programmes auswählen und in *.bat-Datei schreibe
  Antworten mit Zitat      
Hallo zusammen,
ich möchte mittels Matlab eine Batch-Datei für den Aufruf von Fortran Programmen erstellen. Sprich, ich möchte erstmal eine *.bat-Datei schreiben. Diese soll dann in etwa folgende Form haben:

C:\Ordner1\Ordner2\programm.exe

gibt es eine Funktion mit der ich diesen Pfad auswählen kann, ohne das ich diesen manuell über die input-Funktion eingeben und über die fprintf-Funktion in die zuvor angelegte Datei schreiben muss?

Sprich, ich suche eine ähnliche Funktion wie die uigetfile nur das ich anstatt eine Datei auszuwählen, den Datei-Pfad in eine *.bat Datei schreibe.

Bisher habe ich es folgendermaßen gemacht:

Code:
function batch_datei

    dateiname = 'batch.bat';
    fid = fopen (dateiname, 'w');
    Pfad = input('Bitte geben Sie Ihren Pfad an: ','s');    
    fprintf(fid, '%s', Pfad);

fclose(fid);


Ich hoffe ich konnte mich verständlich ausdrücken und freue mich über jeder Art von Hilfe.

Beste Grüße
Private Nachricht senden Benutzer-Profile anzeigen


denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 01.04.2014, 17:34     Titel:
  Antworten mit Zitat      
Hallo

was du meinst ist wohl UIPUTFILE, oder?

Code:


function batch_datei

    dateiname = 'batch.bat';
    fid = fopen (dateiname, 'w');
    [FileName, Pfad] = uiputfile('*.bat', 'Bitte geben Sie Ihren Pfad an: ');    
    fprintf(fid, '%s', fullfile(Pfad, FileName));
    fclose(fid);
 
Private Nachricht senden Benutzer-Profile anzeigen
 
Cope
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 77
Anmeldedatum: 21.02.14
Wohnort: ---
Version: R2013b
     Beitrag Verfasst am: 01.04.2014, 18:06     Titel:
  Antworten mit Zitat      
Super, fast so habe ich mir das vorgestellt! Schon einmal vielen Dank!

Vom Prinzip her macht dieses Programm das was ich gerne wollte, ich wähle eine Datei aus und es speichert den Pfad in eine *.bat-Datei.

Allerdings poppt bei der Auswahl der entsprechenden Datei ein Fenster auf mit der Überschrift: Speichern unter bestätigen und der Warnmeldung: *.exe ist bereits vorhanden. Möchten Sie sie ersetzen?

Gibt es eine Möglichkeit diese Meldung zu umgehen/verhindern/unterdrücken?
Private Nachricht senden Benutzer-Profile anzeigen
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 01.04.2014, 19:59     Titel:
  Antworten mit Zitat      
Cope hat Folgendes geschrieben:

Allerdings poppt bei der Auswahl der entsprechenden Datei ein Fenster auf mit der Überschrift: Speichern unter bestätigen und der Warnmeldung: *.exe ist bereits vorhanden. Möchten Sie sie ersetzen?

Gibt es eine Möglichkeit diese Meldung zu umgehen/verhindern/unterdrücken?


Nein, es geht nicht. Das macht auch keinen Sinn diese zu unterdrücken, da man bei solchen interaktiven Dialogen der User möchte ja gewarnt werden, wenn er das File überschreibt.
Private Nachricht senden Benutzer-Profile anzeigen
 
Cope
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 77
Anmeldedatum: 21.02.14
Wohnort: ---
Version: R2013b
     Beitrag Verfasst am: 01.04.2014, 22:28     Titel:
  Antworten mit Zitat      
Hey denny, nochmals Danke für deine Antwort. Deine Erklärung macht erschreckend viel Sinn... Smile

Doch das File wird ja nicht überschrieben. Selbst wenn ich die Frage: Möchten Sie sie ersetzten mit ja beantworte.

Gibt es denn eine alternative zu der von dir vorgestellten Funktion? Oder bleibt da nur die manuelle Eingabe des Pfades? Denn dieses Dialogfeld verwirrt den späteren/nicht involvierten Anwender sicherlich.

Besten Gruß
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: 01.04.2014, 22:46     Titel:
  Antworten mit Zitat      
Hallo,

wenn es nur darum geht, das Dialogfeld zu unterdrücken, kannst du uigetfile statt uiputfile verwenden. Die Funktionsweise ist ja quasi die gleiche.

Alternativ mit uigetdir nur den Pfad auswählen lassen und den Dateinamen separat bestimmen.

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

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 77
Anmeldedatum: 21.02.14
Wohnort: ---
Version: R2013b
     Beitrag Verfasst am: 02.04.2014, 17:55     Titel:
  Antworten mit Zitat      
Top!Mit uigetfile läuft es 1a.
Habt tausend Dank!
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.