Autor
|
Thema: Batch Datei erstellen (968 mal gelesen)
|
Heino Casper Mitglied CAD/PLM Administrator
Beiträge: 483 Registriert: 26.02.2001 Contact WSM 3.10 Creo 2.0 Catia V5 Acad 2015 Inventor 2015
|
erstellt am: 25. Nov. 2016 12:17 <-- editieren / zitieren --> Unities abgeben:
Moin Moin! Ich möchte eine Batch-Datei erstellen, die ein Programm startet, zwei eingaben in dem Programm macht und das Ergebnis dann in eine Textdatei schreibt. Kann mir da jemand helfen? Im CMD gebe ich folgendes ein: (als Beispiel) "c:\Program Files\Beispiel\Test.exe" -admin << startet das Programm als Admin connect Server Port -restricted << verbindet mit dem Server mit eingeschränkten Rechten getInfo -all >c:\test.text << gibt die gewünschten Infos aus und schreibt sie in eine Text-Datei disconnect << vom Server abmelden exit << beendet das Programm Nur leider bekomme ich keine Batch-Datei geschrieben, da das gestartete Programm keine Befehle an nimmt und ich nicht weiß, wie man das ändert. Also dies funktioniert nicht: start "" "c:\Program Files\Beispiel\Test.exe" -admin connect Server Port -restricted getInfo -all >c:\test.text disconnect exit Also eigentlich muß ich nur wissen, wie ich die Batch Datei so schreíbe, das das Programm meine Befehle annimmt! Nach dem Start meiner Batch-Datei öffnet ich ein CMD-Fenster und es steht dort der Name des Proramms und es wartet mit Admin > auf eine Eingabe. ------------------ Gruß, Heino Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fritsrol Mitglied CAD-Systemingenieur
Beiträge: 143 Registriert: 11.12.2002 Windows 10 64 Office 2016 Eplan P8 2.7 HF2 VS 2015 Medusa 2000i2
|
erstellt am: 25. Nov. 2016 12:49 <-- editieren / zitieren --> Unities abgeben: Nur für Heino Casper
|
Heino Casper Mitglied CAD/PLM Administrator
Beiträge: 483 Registriert: 26.02.2001 Contact WSM 3.10 Creo 2.0 Catia V5 Acad 2015 Inventor 2015
|
erstellt am: 25. Nov. 2016 12:52 <-- editieren / zitieren --> Unities abgeben:
|
fritsrol Mitglied CAD-Systemingenieur
Beiträge: 143 Registriert: 11.12.2002 Windows 10 64 Office 2016 Eplan P8 2.7 HF2 VS 2015 Medusa 2000i2
|
erstellt am: 25. Nov. 2016 12:53 <-- editieren / zitieren --> Unities abgeben: Nur für Heino Casper
Sorry habe die Aufgaben Stellung ich so richtig verstanden. Ich nehme mal an die Zeile "c:\Program Files\Beispiel\Test.exe" -admin funktioniert schon und die anderen 3 Zeilen willst Du dem Programm mitgeben. Stimmt das ? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KlaK Ehrenmitglied V.I.P. h.c. Dipl. Ing. Vermessung, CAD- und Netz-Admin
Beiträge: 2624 Registriert: 02.05.2006 AutoCAD LandDesktop R2 bis 2004 Civil 3D 2005 - 2020 Plateia, Canalis Visual Basic
|
erstellt am: 25. Nov. 2016 12:55 <-- editieren / zitieren --> Unities abgeben: Nur für Heino Casper
Hallo Heino, Nachdem ich nicht weiß wie Dein Programm (Test.exe) aufgebaut ist, ein paar allgemeine Hinweise: Üblicherweise könnte ein Programm Parameter abfragen, das machst Du ja bereits über den Zusatz "-admin" Dann kommt es darauf an woher das Programm die Eingaben erwartet. Geschieht das über die Console (Tastatur) kannst Du die allgemeine Umleitung wählen. Zeichen "<" ist dabei Eingabe Zeichen ">" Ausgabe erfolgt die Ausgabe in eine Datei ist das Zeichen ">>" noch hilfreich, hier wird an eine bestehende Datei angefügt Du kannst also einmal folgenden Versuch unternehmen: Erzeugt eine Datei mit den Eingabebefehlen (Eingabe.txt) mit dem Inhalt:
Code: connect Server Port -restricted getInfo -all >c:\test.text disconnect exit
letzte Zeile natürlich nur wenn es zum Verlassen des Programmes notwendig ist. Deine Stapeldatei (oder Verknüpfung) würde dann so aussehen:
Code: start "" "c:\Program Files\Beispiel\Test.exe" -admin <"c:\Program Files\Beispiel\eingabe.txt"
wobei sich die Frage stellt für was Du das start am Anfang benötigst und warum Du noch einen leeren Block einfügst. Schreibst Du eine Batchdatei (*.bat) oder ein Command (*.cmd)? Start als Befehl eröffnet ja nur ein neues Fenster (sinnvoll wenn dieser Befehl in einer größeren Stapeldatei ausgeführt wird), aber das auszuführende Programm sollte unmittelbar folgen, also: Code: start "c:\Program Files\Beispiel\Test.exe" -admin <"c:\Program Files\Beispiel\eingabe.txt"
Grüße Klaus
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Heino Casper Mitglied CAD/PLM Administrator
Beiträge: 483 Registriert: 26.02.2001 Contact WSM 3.10 Creo 2.0 Catia V5 Acad 2015 Inventor 2015
|
erstellt am: 25. Nov. 2016 14:13 <-- editieren / zitieren --> Unities abgeben:
Vielen Dank für eure Hilfe! So funktioniert es bei mir: Ich habe eine Textdatei mit den Befehlen, die ich an das Programm übergeben möchte erstellt. Wie von Klaus beschrieben. Und diese dann mit dem Befehl: Code: "c:\Program Files\Beispiel\Test.exe" -admin <"c:\Program Files\Beispiel\eingabe.txt"
aufgerufen. Habe den Befehl "Start" einfach ganz weg gelassen. Und daraus habe ich dann ein Batch-Datei gemacht. Läuft! ------------------ Gruß, Heino Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Heino Casper Mitglied CAD/PLM Administrator
Beiträge: 483 Registriert: 26.02.2001 Contact WSM 3.10 Creo 2.0 Catia V5 Acad 2015 Inventor 2015
|
erstellt am: 25. Nov. 2016 14:15 <-- editieren / zitieren --> Unities abgeben:
|
KlaK Ehrenmitglied V.I.P. h.c. Dipl. Ing. Vermessung, CAD- und Netz-Admin
Beiträge: 2624 Registriert: 02.05.2006 AutoCAD LandDesktop R2 bis 2004 Civil 3D 2005 - 2020 Plateia, Canalis Visual Basic
|
erstellt am: 25. Nov. 2016 15:00 <-- editieren / zitieren --> Unities abgeben: Nur für Heino Casper
|