Batch, CMD Scripting Grundlagen unter Windows Tutorial Teil4 - Variablen und Rechnen in Batch Dateien - CMD Befehle Übersicht

Variablen in Batch Dateien

Eine Variable deren Wert sich abhängig von einem Ergebnis ständig ändert, haben wir bereits im Teil 3 kennengelernt. Das Betriebssystem selbst stellt viele vordefinierte Variablen zur Verfügung, wir verwenden diese vordefinierten Variablen zur Abfrage von verschiedenen Systemparametern.
Es ist uns aber auch möglich eigene Variablen zu setzen und damit zu arbeiten.

Öffnen wir eine neue Konsole zur Eingabe mit cmd und geben folgenden Befehl ein:

Sobald wir den Befehl mit Return abschließen, bekommen wir eine Auflistung aller vordefinierten Variablen. Darunter sind ganz interessante Dinge wie der Computername, Prozessor, Benutzername oder das Windowsverzeichnis.

Dabei trennt das = Zeichen die Variable vom Inhalt der Variable.
Möchten wir z.B. nur den Rechnernamen ausgeben, können wir dies durch folgenden Befehl tun:

Man kann sich alle Einträge auf diese Weise ausgeben lassen, schauen wir uns mit dem Set Befehl an, was es sonst noch gibt. Da wäre z.B. noch der Benutzername USERNAME , den man sich durch echo %USERNAME% ausgeben lassen kann.

Durch die % Zeichen sagen wir der Konsole dass es sich bei dem Wort zwischen den % Zeichen um eine Variable handelt, und wir auf den Inhalt der Variable zugreifen wollen.

Wir wandeln unser Beispiel aus dem dritten Teil etwas ab, und sehen auch gleich wie man mit Choice weitere Parameter abfragen kann.

Eigene Variablen kann man auf folgende Weise definieren, wir öffnen dazu ein neues Konsolenfenster und geben die Befehle unten ein.

Wir definieren hiermit eine Variable mit dem Namen seite und dem Inhalt https://www.google.de

Ob das alles so funktioniert hat, können wir überüfen indem wir uns den Inhalt der Variable seite anzeigen lassen.

Abb1

Die Ausgabe sollte gleich sein wie in der Abbildung Abb1.
Ausgegeben wird der Inhalt der Variable seite.

Wir können auf diese Weise auch ein Browser Fenster öffnen welches die angegebene Internetseite öffnet. Dazu erweitern wir unser Beispiel ein wenig.

Mit dem set Befehl haben wir der Variable seite einen Wert zugewiesen, nämlich eine Internetseite.
Der choice Befehl erwartet die Eingabe von A, B oder C und mit explorer.exe können wir ganz einfach eine Internetseite öffnen wenn wir als Parameter eine Internetseite übergeben.

Der set Befehl kann aber auch während der Ausführung fragen welchen Inhalt er speichern soll.
Der /P Parameter ist hierfür zuständig, anstatt des Inhaltes formuliert man nach dem = Zeichen dann eine Ausgabe die den Benutzer zur Eingabe auffordert.

Da wir den goto Befehl und die Sprungmarken ja schon behandelt haben, versuche einmal den Script so umzubauen dass nach jeder Ausführung der Benutzer eine neue Internetseite eingeben kann, ohne die Lösung unten anzuschauen. Es sollte ein leichtes sein!

Rechnen mit Variablen in Batch Dateien

Der set Parameter kann aber auch mit Arithmetischen ausdrücken umgehen wie man in der Hilfe zum Befehl sehen kann. Wir fordern den Benutzer auf 2 Ganzzahlen einzugeben und addieren diese vor der Ausgabe. Zum Umgang mit den Arithmetischen Operationen benötigen wir den Parameter /A

Und jetzt verändern wir unser Beispiel so dass der Benutzer selbst auswählen kann, was für eine arithmetische Operation er durchführen möchte.

Das Ergebnis sollte dann so wie in Abbildung Abb2 aussehen.

Abb2

Zufallszahlen in Batch

Abb3

Zum Abschluss dieses Teils des Grundlagenkurses, sehen wir uns noch an wie in einem Batch Script auch Zufallszahlen mit dem set Befehl erzeugt werden können.
Die Hilfe zum set Befehl (set /?) zeigt uns die Existenz einer dynamischen Umgebungsvariablen %RANDOM% an. Die Existenz dieser Umgebunsvariable ist aber auch vom verwendeten Betriebssystem abhängig, und ist auf älteren Windows Versionen eventuell nicht vorhanden.

Wir sehen also dass uns die Variable Random eine Zufallszahl zwischen 0 und 32767 zur Verfügung stellt. Wir öffnen also eine neue Konsole und testen das gleich einmal.
Durch wiederholtes eingeben von:

wird jedes Mal eine neue Zahl in der Konsole ausgegeben.

Da Batch aber nicht die optimale Scriptsprache ist um Zufallszahlen zu erzeugen, ist es möglich dass oft dieselben Zufallszahlen ausgegeben werden, vor allem wenn man die Wiederholungen schnell hintereinander ausführt. Das hängt damit zusammen dass der Initialisierungswert für die Generierung einer Zufallszahl mit der Uhrzeit verknüpft ist.

Mit ein wenig Mathematik können wir uns aber auch Zufallszahlen in einem bestimmten Bereich generieren lassen.

Ende Teil 4

Teile:
Batch, CMD Scripting Grundlagen unter Windows Tutorial Teil1
Batch, CMD Scripting Grundlagen unter Windows Tutorial Teil2
Batch, CMD Scripting Grundlagen unter Windows Tutorial Teil3
Batch, CMD Scripting Grundlagen unter Windows Tutorial Teil4

Beitrag kommentieren

Bitte verfasse einen Kommentar.

Dein Kommentar wird vor der Freischaltung von einem Admin moderiert.