PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Einen Ordner per Bat Befehl öffnen


Dexxx
12.12.2011, 12:49
Hallo

Ich habe folgendes Problem...

Wenn ich einen Ordner mit einem bat Befehl öffnen lassen will, mache ich das so:

Start c:\ordner

Das klappt soweit noch.
Wenn ich jetzt aber einen Ordner mit einem Leerzeichen drin habe, habe ich meinen Befehl so...

Start "c:\ordner 2"

Das klappt jedoch nicht mehr.
Hier öffnet sich das cmd Fenster im Ordner C:\Ordner 2

Wie kann ich das bewerkstelligen, dass auch Ordner mit Leerzeichen geöffnet werden?

Vielen Dank


Firefall
12.12.2011, 13:23
Du kannst statt start einfach explorer schreiben.
explorer "c:\order 2"

Dexxx
12.12.2011, 13:45
Hi

Hmm, wie einfach doch ab und zu etwas ist :)
Vielen Dank!

Jetzt hat sich mir aber noch ein anderes Problem aufgetan ...
Selbiges Problem habe ich, wenn ich eine exe Datei in einem Ordner mit Leerzeichen starten will ...

Beispiel:
Start "C:\Ordner 2\test.exe"

Auch hier öffnet sich ein cmd Fenster mit dem Namen test.exe
Normal sollte die Exe Datei gestartet werden.

Ich hab mal etwas getestet.
Wenn ich im Ordner keine Leerzeichen drin habe und den Befehl ..

start "C:\Ordner2\test.exe"

ausführe, wird die Exe Datei gestartet.
Kann man das auch irgendwie gängig machen?

Vielen Dank für eure schnelle Hilfe!

Firefall
12.12.2011, 14:43
start sollte nicht nötig sein. Es müsste reichen, einfahc nur den Pfad zur EXE in Anführungszeichen hinzuschreiben.

Dexxx
12.12.2011, 14:50
Vielen Dank, werd ich probieren.

German
12.12.2011, 18:40
Wie die Hilfe zum START Befehl dir verraten hätte, wird das erste in Anführungszeichen gesetzte Argument als Fenstertitel interpretiert. Ergo übergibst du einfach einen String der Länge 0.

start "" "C:\Ordner 2\test.exe"


@firefall
Auch das ist natürlich eine Möglichkeit, allerdings reiht sich der Prozess dann synchron in den Batchablauf ein. Anders gesagt: Der Batch rennt erst weiter, wenn der aufgerufene Prozess beendet wurde. Kommt also darauf an ob synchron oder asynchron (per START) gearbeitet werden soll.