Wenn Sie mehrere Befehle mit einer Zeile ausführen möchten, mit der Sie die Befehle start
beispielsweise starten , wenn Sie einen Befehl wie diesen ausführen möchten :
start "" netsh dump && pause
Dann müssen Sie dies in zwei Schritten tun (eine einzeilige Lösung befindet sich am Ende dieser Antwort).
Schreiben Sie zuerst die Befehle in eine temporäre Batch-Datei (in diesem Fall können Sie &
oder verwenden &&
):
echo netsh dump ^&^& pause ^&^& exit>foobar.cmd
-or-
echo netsh dump ^& pause ^& exit>foobar.cmd
Beachten Sie, dass Sie jedes "&"s
(kaufmännische Und) mit einem "Escape" versehen müssen "^"
, damit sie im echo
Befehl als normale Zeichen behandelt werden können . Alternativ können Sie die temporäre Stapeldatei mit einem Texteditor wie z. B. Notepad erstellen.
Verwenden Sie dann start
, um die Batch-Datei zu starten:
start "" foobar.cmd
-or-
start "" "temporary foobar.cmd"
Hinweis: Das leere Paar doppelter Anführungszeichen ist für das "Title"
, das in der Titelleiste des Befehlsfensters angezeigt start
wird, das geöffnet wird. Dieses "Title"
Argument ist technisch gesehen ein optionales Argument für start
, es ist jedoch tatsächlich erforderlich , wenn der start
auszuführende Befehl in doppelten Anführungszeichen steht. Zum Beispiel im zweiten Beispiel:
start "" "temporary foobar.cmd"
Wenn Sie das leere Paar doppelter Anführungszeichen weglassen:
start "temporary foobar.cmd"
Dann start
wird ein neues Befehlsfenster geöffnet und "temporary foobar.cmd"
als neues Befehlsfenster verwendet "Title"
, und im neuen Befehlsfenster wird nichts ausgeführt.)
Wenn Sie start
warten möchten, bis die Batchdatei abgeschlossen ist (nachdem das pause
Symbol geschlossen wurde), bevor start
der /w
Vorgang abgeschlossen ist, müssen Sie den Schalter zum start
Befehl hinzufügen :
start "" /w foobar.cmd
Sie können dies alles in einer Zeile zusammenfassen und sogar die temporäre Batchdatei ( foobar.cmd
) entfernen (löschen ):
echo netsh dump ^&^& pause ^&^& exit>foobar.cmd && start "" /w foobar.cmd && del foobar.cmd
-or-
echo netsh dump ^& pause ^& exit>foobar.cmd & start "" /w foobar.cmd & del foobar.cmd
Beachten Sie, dass Sie zum Löschen der temporären Stapeldatei start
den /w
Switch verwenden müssen. Andernfalls wird die temporäre Stapeldatei wahrscheinlich gelöscht, bevor sie ausgeführt werden kann.
&
und&&
funktionieren nur unter Windows 'cmd.exe
- das ist nicht DOS.