Was wäre das Batch-Äquivalent des „Pass“-Arguments von Python?

Was wäre das Batch-Äquivalent des „Pass“-Arguments von Python?

Ich versuche, eine Batchdatei zu erstellen, die die Befehlszeile ein wenig vereinfacht. Das Problem, auf das ich stoße, ist, dass ich nach einem von mir erstellten Fehlerprüfsystem nicht möchte, dass mit „else“ etwas passiert.

Ich brauche ein Äquivalent zu dem passArgument, das Python hat; ein Argument, das dem Interpreter mitteilt, dass er nichts tun und warten soll, bis die nächste Zeile mit Anweisungen angegeben wird.

Gibt es eine entsprechende Charge? Wenn nicht, gibt es eine einfache Möglichkeit, so etwas zu tun?

Antwort1

Batch hat kein echtes Äquivalent zu Pythons pass, aber es scheint, als ob Sie es hier nicht wirklich brauchen. Wenn Sie in der Klausel nichts tun möchten else, lassen Sie diese Klausel einfach ganz weg. Beispiel:

IF EXIST "somefile.txt" (
    ECHO "yay!"
)

Antwort2

Eine triviale Lösung ist die Verwendung des REMBefehls oder REM pass.

Soweit ich weiß, gibt es in der Eingabeaufforderung kein Äquivalent zum Befehl „Pass“.

Wenn Sie wirklich einen „Pass“-Befehl möchten, können Sie Ihren eigenen erstellen. Nehmen Sie beispielsweise ein beliebiges „Hallo Welt!“-Beispiel in Ihrer bevorzugten Programmiersprache, entfernen Sie den Druckbefehl und kompilieren Sie es in „Pass“. Legen Sie die Ausgabe irgendwo in Ihren Pfad und fertig.

Antwort3

Anstelle von pass in Python verwenden Sie goto und missbrauchen es hier. Es wurde dafür gemacht. Wir richten ein pass goto wie folgt ein:

wenn bla echo "bla bla" gehe zu: pass

:return echo "jetzt sind wir hier"

:pass echo "bla bla" gehe zu :return

Ich sehe, dass alle von Gotos als No-Go sprechen, und ich sage, das ist Blödsinn. Sie lösen sehr komplizierte Codeprobleme, wenn sie richtig verwendet werden, und solange Sie sicherstellen, dass sie alle definiert und nur einmal verwendet werden, sind sie sehr zuverlässig. Ich weiß, das ist eine alte Frage, aber vielleicht hilft sie jemand anderem.

Hoss

verwandte Informationen