it-swarm-eu.dev

So erstellen Sie eine Batchdatei unter Windows mit "Start" und einem Pfad mit Leerzeichen

Ich muss eine Batchdatei erstellen, die mehrere Konsolenanwendungen in einer Windows-.cmd-Datei startet. Dies kann mit dem Startbefehl erfolgen.

Der Befehl enthält jedoch einen Pfad. Ich muss auch Parameter übergeben, die auch Leerzeichen haben. Wie macht man das?

Z.B. Batchdatei

start "c:\path with spaces\app.exe" param1 "param with spaces"
74
Tim

Eigentlich funktioniert sein Beispiel nicht (obwohl ich zuerst dachte, dass es auch so wäre). Basierend auf der Hilfe für den Startbefehl ist der erste Parameter der Name des neu erstellten Eingabeaufforderungsfensters, und der zweite und dritte sollte der Pfad zur Anwendung bzw. deren Parameter sein. Wenn Sie vor dem Pfad ein weiteres "" hinzufügen, sollte es funktionieren (zumindest bei mir). Verwenden Sie so etwas wie:

start "" "c:\path with spaces\app.exe" param1 "param with spaces"

Sie können das erste Argument so ändern, dass es dem Titel des neuen Befehls Prompt entspricht. Wenn eine Windows-App erstellt wird, wird der Befehl "Eingabeaufforderung" nicht angezeigt und der Titel spielt keine Rolle.

158
Andy

Es ist korrekt, den Pfad mit Apostrophen zu verlassen, der Startbefehl nimmt jedoch einen Parameter mit dem Titel des neuen Fensters. Dieser Parameter wird von den umgebenden Apostrophen erkannt, sodass Ihre Anwendung nicht ausgeführt wird.

Versuchen Sie etwas so:

start "Dummy Title" "c:\path with spaces\app.exe" param1 "param with spaces"
15
Steffen
start "" "c:\path with spaces\app.exe" "C:\path parameter\param.exe"

Wenn ich den obigen Vorschlag verwendet habe, habe ich:

'c:\path' wird nicht als interner oder externer Befehl, lauffähiges Programm oder Stapelverarbeitungsdatei erkannt. 

Ich denke, das zweite Qoutationszeichen verhindert, dass der Befehl ausgeführt wird. Nach einiger Suche unter Lösung rette ich meinen Tag:

start "" CALL "c:\path with spaces\app.exe" "C:\path parameter\param.exe"
2
Mustafa Kemal

Interessanterweise scheint es, dass Sie in Windows Embedded Compact 7 keine Titelzeichenfolge angeben können. Der erste Parameter muss der Befehl oder das Programm sein.

1
Mark Agate

Du solltest so etwas verwenden:

start/d C:\Windows\System32\calc.exe

start/d "C:\Programme\Mozilla

Firefox "firefox.exe start/d

"C:\Programme\Microsoft

Office\Office12 "Excel.EXE

Ich empfehle Ihnen auch, einen speziellen Batch-Datei-Editor zu verwenden - Dr.Batcher

0
user243871