start /b "" "c:\Program Files\Oracle\VirtualBox\VBoxHeadless.exe" -startvm "debian604 64"
Wenn Sie die Parameterliste lesen mit start /?
:
START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
[/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
[/NODE <NUMA node>] [/AFFINITY <hex affinity mask>] [/WAIT] [/B]
[command/program] [parameters]
"title" Title to display in window title bar.
command/program
If it is an internal cmd command or a batch file then
the command processor is run with the /K switch to cmd.exe.
This means that the window will remain after the command
has been run.
If it is not an internal cmd command or batch file then
it is a program and will run as either a windowed application
or a console application.
parameters These are the parameters passed to the command/program.
Es erwartet ein title
in Anführungszeichen eingeschlossenes ( "
). Da Ihr Programmpfad Anführungszeichen enthielt, wurde er als Titel interpretiert. Das Hinzufügen eines expliziten Titels (in diesem Fall leer ""
) funktioniert.
Eine alternative Methode verwendet den /d
Schalter, um den Pfad anzugeben. Speziell:
start /b /d "c:\Program Files\Oracle\VirtualBox\" VBoxHeadless.exe -startvm "debian604 64"
Es scheint das erste Argument nach dem zu nehmen /d
Switch als Pfad verwendet, auch wenn es in Anführungszeichen gesetzt ist. Wenn das nächste Argument nicht in Anführungszeichen gesetzt ist, funktioniert dies. Alles nach dem, was als Befehl / Programm erkannt wird, wird als Parameter an diesen Befehl / dieses Programm übergeben. Beachten Sie, dass dies nicht funktioniert, wenn der Befehl / das Programm Leerzeichen im Namen enthält VBox Headless.exe
, da dies Anführungszeichen erfordert und als Titel erkannt wird.
Insgesamt ist die erste (explizite Titel-) Methode wahrscheinlich besser. Es war eine schlechte Design-Wahl von Seiten von Microsoft, sie hätten wirklich einen Schalter für den Titel hinzufügen sollen, anstatt "ist das erste Argument in Anführungszeichen eingeschlossen?".
start /b
, die virtuelle Maschine nicht in den Hintergrund stellen. Ich muss mir dann etwas anderes einfallen lassen.