More NT Command-Script Techniques
Weitere Windows NT Befehls-Script Techniken

Quelle: "Windows NT Magazine", 01.12.1999
Autor: Michael Ottey

  1. Bildschirm löschen
    Das Löschen des Bildschirmes am Beginn eines Scriptes ist eine gute Technik.
       cls
    
  2. Bildschirm Titel
    Zur Beschriftung des Fensters eines Befehles verwenden Sie
       @title=Ihren Titeltext ...
    
  3. Bildschirm Farbe
    Zur Festlegung der Farbe eines Fensters verwenden Sie (Die gültigen Farbcodes "FG" fragen Sie mit color/? ab.)
       @color FG
    
  4. Drive und Directory
    Verwenden Sie die Befehle PUSHD und POPD um vorübergehend den Drive und/oder das Verzeichnis zu wechseln.
    pushd x:\dir ::= speichert laufenden Drive und Verzeichnis, verzweigt dann zum angegebenen Drive und Verzeichnis
    popd ::= verzweigt zurück zum Drive und Verzeichnis des letzten pushd
       c:\work\>
       c:\work\> pushd a:\maximal
       a:\maximal\> ... dann hier weiter
       a:\maximal\> popd
       c:\work\>
  5. Environment Variable
    Verwenden Sie SETLOCAL um Veränderungen von Umgebungsvariablen für ein Script zu begrenzen.
    Verwenden Sie ENDLOCAL um auf die vorherigen Umgebungsvariablen zurückzugehen.
       ...
       setlocal
       set temp=x:\work
       ...
       endlocal
       ...
    
  6. Errorlevel
    Viele NT Befehlen setzen im Fehlerfall einen Returncode, der in Scripts auch geprüft werden sollte
       net group mygroup myuser /add
       if errorlevel 1 echo NET GROUP ADD Fehler
    
  7. Lange Dateinamen
    Verwenden Sie lange Dateinamen in Befehlen, die mehr als einen Parameter erlauben, dann setzen Sie den Dateinamen unbedingt unter Hochkomma
       copy "c:\test\Anton in Tirol.doc" a:\
    
  8. Input / Output Umleitung
    Verwenden Sie für Eingabe und Ausgabe von Befehlen auch die Umleitung / Redirection / Pipe
       dir < in.txt > out.txt
  9. bedingte Anweisungen mit findstr
    Um Aktionen in Abhängigkeiten von Zeichenketten in Textdateien zu steuern, verwenden Sie FINDSTR. ALs Beispiel gilt hier der Aufruf eines Fehler-Scripts in Abhängigkeit vom Text "timed out"
       ping myserver>ping_out.txt
       @findstr "timed out" ping_out.txt && pingerror.cmd
  10. Schleifen
    Verwenden Sie die FOR-Schleife, um Befehle auf Fileinhalte auszuführen. Als Beispiel enthalte die Datei SERVERS.TXT eine Liste von Servern
       for /f %%i in (servers.txt) do ping %%i