Übergeben optionaler Parameter in einem Batch-Skript

Übergeben optionaler Parameter in einem Batch-Skript

Ich versuche gerade mein erstes Batch-Skript zu schreiben und versuche zu verstehen, wie man Argumente übergibt. Es ist ein sehr einfacher Befehl, der gut läuft incmd.

Befehl: C:\Program Files\Foo> myexe -sd tempVar >> C:\temp.txt

Hier-sdist Befehlsoption undtempVarist ein weiterer Parameter (ich kenne diesen TempVar-Wert und kann ihn im Batch-Skript fest codieren).

Batch-Skript
Start "C:\Program Files\Foo\myexe.exe" -sd tempVar

FehlerBeim Ausführen einer Batchdatei erhalte ich die Fehlermeldung-sdwird nicht erkannt. Bitte schlagen Sie vor, was ich an diesem Skript bearbeiten/korrigieren sollte.

Antwort1

Der erste Parameter des startBefehls ist der Text, der in der Titelleiste des Fensters angezeigt werden soll. Dieser Wert steht in Anführungszeichen. In Ihrem Fall startmöchten Sie also, dass der Fenstertitel lautet:C:\Programme\Foo\myexe.exe. Dann übergeben Sie es -sd tempVaran den startBefehl, und dieser hat keine Ahnung, was das bedeutet, da es sich nicht um gültige Parameter für handelt start.

Versuchen Sie stattdessen Folgendes …

Start "" "C:\Program Files\Foo\myexe.exe" -sd tempVar

verwandte Informationen