Programmierung

copy hilfe.txt r:

Batch-Programmierung

© Archiv

Befehle zur Arbeit mit Verzeichnissen

Sehr wichtig ist auch der Befehl Copy, um Daten aus einer Quelle zu einem Ziel zu bringen, meist Dateien von einer Speicherposition zu einer anderen wie mit copy hilfe.txt r: zu übertragen. Dieser Befehl kopiert eine Datei im aktuellen Verzeichnis auf das Laufwerk r:, einen Speicherstick. Sie legen mit copy auch eine identische Kopie unter einem anderen Dateinamen wie copy hilfe.txt hilfe2.txt oder einer anderen Dateiendung an: copy hilfe.txt hilfe.alt.

Als Ziel lässt sich auch einer der reservierten Gerätenamen verwenden, wie dies zuvor das Beispiel pause>nul nutzt. Der Gerätename Nul verschluckt einfach unerwünschte Ausgaben. Der Befehl copy hilfe.txt>nul ist somit statthaft, bewirkt aber nichts. Anders sieht es aus, wenn Sie die Ausgabe an den Drucker wie mit copy hilfe.txt prn: schicken.

Wenn es sich nicht um reine Textdateien handelt, verwenden Sie den Copy-Parameter /b, der binäre Daten kopiert und Steuerzeichen nicht ausführt, sondern weiterleitet: copy /b hilfe.txt prn: Das Beispiel Cd1.bat (Heft-DVD) spielt mit Verzeichnissen.

Ein weiterer wichtiger DOS-Befehl lautet Ren oder Rename. Damit benennen Sie Dateien oder Dateigruppen um. Es steht ihnen frei, den Dateinamen, die Erweiterung oder - wie im Beispiel - beides zu ändern: ren hilfe.txt hilfe.alt. Die ursprüngliche Datei ist nach dem erfolgreichen Rename-Befehl nicht mehr vorhanden.

Batch-Dateien kopieren auch Verzeichnisäste. Dazu verwenden Sie den Xcopy-Befehl, der über zahlreiche Parameter zur Feineinstellung verfügt. Die grundsätzliche Syntax lautet xcopy Quelle Ziel Parameter. Sie überblicken alle verfügbaren Parameter mit dem schon erwähnten Befehl help xcopy|more.

Der Befehl help xcopy liefert die gewünschten Informationen, der Filter |more bewirkt eine seitenweise Ausgabe auf dem Bildschirm. Das Befehlsverkettungszeichen ¦ erreichen Sie auf den meisten Tastaturen durch die Tastenkombination [Alt-Strg-<].

Sprungmarken, Umgebungsvariablen

Batch-Programme reagieren auch auf - zugegeben einfache - Gegebenheiten. Der If-Befehl führt den folgenden Befehl nur aus, wenn die Bedingung auch erfüllt ist. Damit lassen sich u.a. die Existenz von Dateien sowie Verzeichnissen prüfen: if exist c:\Texte\Dateiname.txt Befehl. Ist die Bedingung erfüllt, also die Textdatei im Verzeichnis c:\Texte vorhanden, arbeitet der Befehl in der If-Zeile.

Ansonsten arbeitet die nächste Zeile weiter. Statt If Bedingung arbeiten Sie auch mit If not Bedingung, was die Logik umkehrt: if not exist c:\Texte\Dateiname.txt Befehl. Statt auf die Existenz der Datei zu reagieren, wirkt dies nur, wenn Datei oder Verzeichnis nicht vorhanden sind.

Der If-Befehl kennt noch weitere Varianten, wie Sie bei den Themen Umgebungsvariablen sowie Errorlevel-Auswertung lesen. Das Batch-Beispiel If1.bat b (Heft-DVD) zeigt den Einsatz. Anstelle eines Befehls verzweigen Sie auch zu einer Stelle mit dem Goto-Befehl:

goto Fehler2

oder auch

if not exist datei.txt goto Fehler3

Die so anzuspringende Stelle muss allerdings im Batch-Programm auch referenziert sein. Hierfür verwenden Sie den gleichen Namen wie schon bei Goto, setzen zuvor aber noch einen Doppelpunkt. Diese Sprungmarke stellt eine eigene Zeile dar:

:Fehler2
rem Fehlersituation 2 auswerten
...
:Fehler3
Batch-Programmierung

© Archiv

Die Umgebungsvariable Path legt fest, wo außer im aktuellen Verzeichnis nach ausführbaren Programmen gesucht werden soll.

Der Goto-Befehl verändert also den sequentiellen Ablauf von Programmen - also von oben nach unten. Sie springen bedingt oder unbedingt zu einer beliebigen Stelle im Programm und setzen den weiteren Ablauf dort fort. In Kombination mit dem If-Befehl ergeben sich so leistungsfähige Strukturen. Wie Sie mit Sprungmarken arbeiten, stellt das Beispiel Goto1.bat auf der Heft-DVD dar.

Batch-Programme legen zum einen Umgebungsvariablen an oder löschen diese, zum anderen werten sie diese auch aus. Auf diese Art kommunizieren Hilfs- oder Anwendungsprogramme einerseits und Batch-Programme andererseits. In Umgebungsvariablen speichern Sie Zugriffspfade, Ergebnisse oder auch den Status von Operationen. Eine Umgebungsvariable definieren Sie mit dem Befehl set Variablenname=Wert also beispielsweise set tempo=hoch.

Mehr zum Thema

HTML 5
Webgestaltung

Google Web Designer ist spezialisiert auf HTML5. Ein Vorteil dieses Standards ist das einfache Einbinden von Videos mit dem Element video. Wir zeigen…
Wir verraten, wie Sie Fritzboxen und andere Router vor Hackern schützen.
Fritzbox, Asus, Belkin und Co.

Fritzbox, Asus, Belkin oder DLink - die Liste der geknackten Router ist lang. Hacker stahlen Passwörter oder NAS-Daten. So machen Sie Ihren Router…
Wir führen Sie zur eigenen Windows-App - unserem PC-Magazin-RSS-Feed.
C# und XAML

Wir zeigen, wie Sie Windows 8.1 Apps selbst programmieren können. Lernen Sie das App erstellen an Hand unseres Beispiels: dem RSS-Feed von PC…
Windows Tipps & Tricks: Benutzerrechte unter Windows 8.1
Programme richtig installieren

Wir zeigen Ihnen, wie Sie sich unter Windows 8.1 alle Benutzerrechte verschaffen und Programme richtig installieren.
Windows 8: Starbildschirm
Microsoft Project Siena

Erstellen Sie sich selbst eine App für Windows 8, die auf alle Funktionen Ihres Tablets zugreifen kann, inklusive Kamera, Mikrofon und Lautsprecher.…