1

Batch Datei -h (help) funktion einfügen?

Frage von CockieImperium CockieImperium

Hallo,also ich habe eine kleine Batch Datei erstellt. Es funktioniert alles super und so wie es sein muss, nur habe ich folgendes Problem:

Wie mache ich, dass wenn man -h oder einfach nur h schreibt und dann Enter drückt, ein neuer Text kommt, denn ich halt vorher festlege. Also einfach nur eine Help Function sozusagen.

Gruß

Fragen zu gleichen Themen finden

Antworten (1)

  • 0
    Antwort von bendebass bendebass

    Erkläre deine Absichten mal genauer.

    Es gibt 2 Varianten wie man dieses Problem verstehen kann.Soll deine Batch von der Eingabeaufforderung gestartet werden und das eventuelle help als Argument beinhalten. Oder soll man direkt während die Batch abläuft einfach h eingeben und dann kommt die Hilfe.

    Zu der ersten Variante.Sprich wenn man in dem Kommandzeile "script.bat -help" eingibt um den Script zu starten.

    Die Argumente werden innerhalb der Batch durchnummeriert und können per einfacher vorgestelltem %-Zeichen eingesetzt werden. Die %0 ist hierbei generell besetzt mit dem kompletten Dateipfad der Batchdatei.

    Unser Argument %1 müsste also "-help" heissen, wenn es denn eingegeben worden ist. Ansonsten existiert dieser nämlich nicht.Man muss nun einfach nur per If-Schleife fragen ob %1 gleich "-help" ist und dann entsprechend die hilfe anzeigen.

    @echo off

    cls

    IF %1==-help goto hilfe

    :programme

    echo hier deine normalen befehle

    :hilfe

    echo hier die Hilfe

    exit

    Zu der zweiten Variante.Sprich wenn man bereits die script.bat bereits gestartet hat und während sie abläuft nach einer Hilfe fragen möchte.Damit der Benutzer eine Eingabe geben kann wird während der Abfrage die Batch angehalten und geht erst weiter nachdem die Eingabe mittels Enter bestätigt wurde.

    Die Eingabe wird immer automatisch in eine Variable gespeichert mit der man dann weiterarbeiten kann.So fragt man nach einer Eingabe.

    set /p variable=Eingabe:

    Wobei "variable" der Variablenname ist und das "Eingabe:" wird dem Benutzer angezeigt, damit er weiss, dass er nun eine Eingabe machen kann. Hier kann auch was anderes stehen (man könnte es sogar frei lassen)

    Nun muss man nur noch per if-schleife Abfragen ob ein h eingegeben worden istIF %variable%==h goto hilfe

    Bedenke hierbei, dass auch nur das kleine h ohne "-" oder "/" abgefragt wird.Besser ist es also wenn direkt vor der set /p Abfrage angibt was man einzugeben hat.

    Hier also der ganze Script.

    @echo off

    cls

    echo.

    echo [1] Zum ersten Befehl

    echo [Ende] zum Beenden des Programms

    echo [h] Für Hilfe

    echo.

    set /p variable=Eingabe:

    IF %variable%==1 goto befehl1

    IF %variable%==Ende goto exit

    IF %variable%==ende goto exit

    IF %variable%==h goto hilfe

    IF %variable%==H goto hilfe

Diese Frage

Verwandte Fragen

Noch nicht den richtigen Rat gefunden?

Einfach und schnell viele hilfreiche Ratschläge von Deutschlands aktivster Ratgeber-Community erhalten!

Einfach und schnell einen Tipp erstellen und Ihren guten Rat mit anderen teilen!

Einfach und schnell ein Video hochladen und anschaulichen Rat an alle geben!

Die unter gutefrage.net angebotenen Dienste und Ratgeber Inhalte werden nicht geprüft. Die Richtigkeit der Inhalte wird nicht gewährleistet. Rechtliche Hinweise finden Sie hier.