Ausführen der .bat-Datei in zsh (unter Windows)


3

Auf einem Windows-Computer möchte ich die Verwendung cmd.exeum jeden Preis vermeiden . Ich versuche Babun (Mintty 1.1.3) zu verwenden, um eine Batch-Datei in einem Windows-Ordner auszuführen.

Das funktioniert:

{ ~ } » ./file.bat -o /path/to/files.xml

Ich würde jedoch gerne etwas machen wie:

{ ~ } » cd /path/to/  
{ ~ } » ./"c:\Program Files\App\file.bat" -o files.xml

Ich bekomme jedoch nur zsh: no such file or directory:

Ich habe versucht sh, cmd /cund einige andere Befehle, die ich gefunden habe, ohne Erfolg. Ich habe auch versucht, ein Linux-freundlicheres Pfadformat zu verwenden, dhc:/Program\ Files/App/file.bat

Ich werde für jede Hilfe dabei dankbar sein.


Sind Sie sicher, dass die UAC-Virtualisierung Ihnen und der Datei an anderer Stelle keinen Streich spielt? Weil die Antwort von Linostar definitiv funktioniert.
— Daniel B

Vielen Dank. Nein, ich bin mir nicht sicher. Wie kann ich das überprüfen?
— msoutopico

Antworten:


5

Haben Sie versucht, den Schrägstrich ./am Anfang des Pfads zu entfernen ? A .bedeutet das aktuelle Verzeichnis, und es macht normalerweise keinen Sinn, es vor einen absoluten Pfad zu setzen, wie den, den Sie verwenden.

Versuchen:

{ ~ } » "c:\Program Files\App\file.bat" -o files.xml

oder

{ ~ } » "c:/Program Files/App/file.bat" -o files.xml

AKTUALISIEREN:

oder versuchen Sie es mit: "/cygdrive/c/Program Files/App/file.bat" -o files.xml


Danke, Linostar. Ja, das ist das erste, was ich versucht habe. Das Ergebnis ist die Meldung "zsh: Befehl nicht gefunden: C: \ Programme \ App \ file.bat" (für Ihren früheren Vorschlag) oder "Das System kann den angegebenen Pfad nicht finden" (für den letzteren).
— msoutopico

Was ist die Ausgabe des Befehls pwd in Ihrem zsh? Das gibt eine gute Vorstellung davon, wie Ihre absoluten Pfade geschrieben werden sollten.
— Linostar,

Da es sich im Grunde genommen um Cygwin für Steroide handelt, kann es hauptsächlich mit Windows-Pfaden arbeiten. "G:/test.bat"funktioniert für mich, einschließlich eines korrekt eingestellten Arbeitsverzeichnisses und so weiter.
— Daniel B.,

Danke, @Linostar: Die Ausgabe von pwd ist /cygdrive/c/Users/Manuel/SkyDrive/path/to/files.xml.
— Msoutopico

Ich habe versucht, ein einfacheres test.bat(ohne -o Argumente) zu setzen, das gerade Hello Worldin den gleichen Ordner druckt, in dem file.batist, und das arbeitet. So seltsam.
— Msoutopico
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.