Windows-Befehle für Server 2012 & Windows 8: kurz & gut

Æleen Frisch

Helge Klein

Olaf Engelke

Inhalt

1. Windows-Befehle für Server 2012 & Windows 8

Einführung

Für wen dieses Buch gedacht ist

Was dieses Buch nicht enthält

Aufbau

Konventionen

Die Eingabeaufforderung

Starten unter Windows 8/Server 2012

Eingabe von Befehlen

Umleitung der Ein- und Ausgabe

Umgebungsvariablen

Installation zusätzlicher Administrationstools

Hilfebefehle und -dateien

Resource Kits, Support Tools, Windows Assessment and Deployment Kit

Windows PowerShell

Allgemeine Befehle

clip

cmd

Optionen

command

COLOR

date

doskey

Befehlshistorie und Editieroptionen

Makro-Optionen

find

Optionen

findstr

Optionen

Bestandteile von regulären Ausdrücken

more

Optionen

PATH

set

setx

Beispiele

shutdown

Optionen

sort

Optionen

TIME

VER

Dateien und Verzeichnisse

ASSOC

attrib

Optionen

CD

cipher

Optionen

Weitere Optionen

comp

Optionen

compact

Optionen

COPY

Optionen

DEL

Optionen

DIR

Optionen

dirquota

dirquota quota

dirquota autoquota

dirquota template

Optionen

Beispiele

du

expand

Optionen

fc

Optionen

filever

FTYPE

makecab

Optionen

MD

MOVE

movefile

pendmoves

RD

Optionen

recover

REN

replace

Optionen

robocopy

Optionen

sfc

Optionen

Beispiel

streams

tree

Optionen

TYPE

wbadmin

where

Optionen

xcopy

Optionen

Dateisysteme, Volumes und Festplatten

convert

Optionen

chkdsk

Optionen

chkntfs

defrag

Optionen

disk2vhd

diskpart

Optionen für alle Befehle

Beispiele

diskshadow

dism

Optionen

format

Optionen

fsutil

imagex

label

manage-bde

Optionen

MKLINK

mountvol

repair-bde

Optionen

subst

VOL

vssadmin

wim2vhd

Drucker und Warteschlangen

lpq

lpr

Optionen

print

prncnfg.vbs

prndrvr.vbs

Optionen

prnjobs.vbs

Optionen

prnmngr.vbs

Optionen

prnport.vbs

Optionen

Beispiele

prnqctl.vbs

Beispiele

pubprn.vbs

Beispiele

rundll32 printui.dll

Registrierung

lodctr

Argumente

reg

Häufige Optionen

Verfügbare Operationen

regini

Syntax der Skriptdateien

Prozesse

handle

Beispiel

psexec

Optionen

runas

Optionen

START

Optionen

tasklist

taskkill

unlodctr

Argumente

Dienste

net continue

net pause

net start

net stop

sc

Befehle

Berechtigungen und Rechte

auditpol

Befehle

cacls, xcacls, xcacls.vbs

dsacls

Optionen

icacls

Optionen

Beispiele

setacl

Optionen und Parameter

takeown

tpmvscmgr

Systemdiagnose und -information

diskperf

Optionen

dispdiag

Optionen

driverquery

Optionen

eventcreate

Optionen

getmac

Optionen

ktmutil

logman

Optionen für alle Befehlsvarianten

Optionen zu logman create und logman update

Optionen zu logman update

relog

Optionen

systeminfo

typeperf

tzutil

verifier

w32tm

wevtutil

Wichtige Optionen für set-log

Allgemeine Optionen

wmic

Optionen

Beispiele

Systemkonfiguration

at

Variationen

Optionen für Auftragsausführung

bcdedit

bcdboot

Optionen

bootcfg

Optionen

reagentc

Befehle

cmdkey

fondue

licensingdiag

powercfg

Optionen

pwlauncher

register-cimprovider

regsvr32

Optionen

schtasks

sconfig

scregedit.wsf

Optionen

slmgr.vbs

winmgmt

winrm

winrs

Optionen

Beispiel

Netzwerk

Grundlegende Netzwerkbefehle

arp

bitsadmin

Optionen

checknetisolation

dnslint

ftp

Optionen

hostname

ipconfig

irftp

netstat

Optionen

nslookup

pathping

Optionen

ping

Optionen

route

Optionen

telnet

tftp

tracert

Optionen

Microsoft-Netzwerk

nbtstat

Optionen

net computer

net config

net config Server-Optionen

net file

net session

net share

Optionen

net statistics

net time

net use

Optionen

net view

netcfg

Optionen

openfiles

rasdial

Optionen

Administration von Microsoft-Netzwerkdiensten

dnscmd

Optionen

dfscmd

Optionen

dfsutil

dfsutil Root

dfsutil Link

dfsutil Target

dfsutil Property

dfsutil Client

dfsutil Server

dfsutil Diag

dfsutil Domain Domänenname

dfsutil Cache

Alte Syntax: Optionen für Server und Client

Alte Syntax: Clientoptionen

netsh

Verfügbare Kontexte

Beispiele

Internet Information Server

appcmd

Optionen

Beispiele

iisreset

Optionen

Benutzer und Gruppen

kixtart

net group

net localgroup

net user

Optionen

whoami

Active-Directory-Verzeichnisdienst

adprep

csvde, ldifde

Optionen für Im- und Export

Optionen für den Export

Optionen für den Import

dcdiag

Optionen

dcgpofix

Optionen

djoin

Optionen

dsadd

Optionen

dsamain

Optionen

dsdbutil

dsget

Objekttypen

dsmgmt

dsmod

Objekttypen

dsmove

dsquery

Objekttypen und ausgewählte Optionen

dsrm

esentutl

gpresult

Optionen

gpupdate

klist

ksetup

Wichtige Optionen

ktpass

net accounts

Optionen

netdom

Optionen

Wichtige verfügbare Operationen

ntdsutil

nltest

Optionen

redircmp

redirusr

rendom

repadmin

Optionen

Einfachere Kommandos

/prp

secedit

Optionen

setspn

Optionen

Cluster

cluster

cluster node

Optionen

cluster group

Optionen

cluster network

Optionen

cluster netinterface

Optionen

cluster resource

Optionen

cluster resourcetype

Optionen

cluster log

Optionen

nlb

Remotedesktopdienste

change logon

change port

change user

flattemp

logoff

msg

mstsc

query process

query session

query termserver

query user

rdpsign

reset session

shadow

tscon

tsdiscon

tskill

tsprof

Installation und Deployment

msiexec

Optionen

oclist

ocsetup

Optionen

pkgmgr

pnputil

Optionen

servermanagercmd

Optionen

sysprep

wuauclt

Skripten und Batchdateien

CALL

choice

Optionen

CLS

cscript

ECHO

EXIT

FOR

Optionen

Beispiel

forfiles

Optionen

GOTO

IF

PAUSE

POPD

PROMPT

PUSHD

REM

SET

SETLOCAL. . . ENDLOCAL

SHIFT

timeout

TITLE

waitfor

wscript

Zertifikate

certreq

Optionen

certutil

Optionen

Die Wiederherstellungsumgebung

Konstrukte in Batchdateien

Windows PowerShell – Grundlagen

LDAP-Suchfilter

Beispiele

Windows-GUI – Tipps und Tricks

Verwendung der Maus

Tastenkombinationen

Windows im WWW

Blogs

Informationen und Fehlersuche

Softwarearchive

Stichwortverzeichnis

Kapitel 1. Windows-Befehle für Server 2012 & Windows 8

Einführung

Am Anfang war die Dunkelheit. So könnte man ganz kurz die Frühzeit der Personalcomputer beschreiben. Jener meist schwarze Bildschirm mit weiß, bernsteingelb oder grün leuchtender Befehlszeile, in der man dem Computer mit mehr oder weniger mühsam erlernten Befehlen und Tastenkombinationen sagen konnte, was er zu tun hatte, war die dominierende Schnittstelle für Administratoren und Anwender. Es sollte einige Zeit dauern, bis grafische Benutzeroberflächen, geeignet auch für Mausbedienung, die Eingabeaufforderung ablösten.

Bei modernen Windows-Versionen wie Windows 8/Server 2012 tritt diese Eingabeaufforderung kaum noch in Erscheinung, sondern wird mehr denn je vor dem Auge des Anwenders verborgen. Das liegt nicht daran, dass sie plötzlich alle Bedeutung verloren hätte. Vielmehr geht Microsoft wohl davon aus, dass die meisten Anwender ohnehin zu den in der grafischen Benutzeroberfläche bereitgestellten Werkzeugen greifen und Profis sich mit der PowerShell arrangieren, die seit Windows 7 integraler Bestandteil des Betriebssystems geworden ist.

Für wen dieses Buch gedacht ist

Diese Referenz beschreibt die Befehle der Windows-Eingabeaufforderung (die oft auch als Befehlszeile, Kommandozeile, Konsole oder DOS-Prompt bezeichnet wird) in den aktuellen Versionen von Windows. Sie ist nicht nur für Systemadministratoren gedacht, sondern auch für andere Windows-Anwender. Enthalten sind die meisten Befehle der Client- und Serverversionen von Windows seit Windows 7/Server 2008 R2. Etliche der Befehle haben eine weiter zurückreichende Geschichte und sind in derselben Form oder mit abgewandelter Syntax auch für frühere Versionen des Windows-Betriebssystems gültig.

Was dieses Buch nicht enthält

Aufgrund des kompakten Formats der Reihe »kurz & gut« wurden selten genutzte und sehr spezielle Befehle teilweise nicht in diese Referenz aufgenommen. Einige weitere Befehle werden nicht behandelt, weil entweder ihre Funktion bereits von einem anderen Befehl übernommen wurde oder sie schlicht veraltet sind. Daher sind Befehle, die es ausschließlich in Windows Vista, Server 2008, Server 2003, XP, anderen früheren Versionen, Resource Kits oder Support Tools gab, nur noch in Ausnahmen in dieser Ausgabe enthalten. Zudem wurden die Informationen zu Befehlen älterer Betriebssystemversionen als Windows 8/Server 2012 gekürzt, um Raum für die neuen Befehle zu schaffen und das Buch dabei weiterhin möglichst kompakt zu halten. In einigen Fällen fehlen auch solche Befehle, die nur dann erscheinen, wenn spezielle Rollen oder Funktionen des Betriebssystems installiert werden.

Ebenfalls nicht enthalten sind Programme mit grafischer Benutzeroberfläche, da sich dieses Buch auf Befehle beschränkt, die in der Eingabeaufforderung bzw. in Skripten nutzbar sind. Ausnahmen gibt es lediglich für solche Programme, die sowohl über eine grafische Oberfläche verfügen als auch komplett oder in wesentlichen Teilen aus der Eingabeaufforderung heraus gesteuert werden können.

Aufbau

Die Befehle sind nach Funktionsgruppen geordnet und innerhalb dieser Gruppen alphabetisch sortiert. Einen bestimmten Befehl finden Sie am einfachsten über den Index. Die Optionen der Befehle sind zunächst nach ihren Funktionen und dann weitestgehend nach Wichtigkeit angeordnet. Weniger wichtige Optionen werden gelegentlich nicht aufgeführt. Einige Befehle bieten so viele Optionen, dass es aufgrund des kompakten Formats nicht möglich ist, alle aufzuführen.

Viele der in diesem Buch beschriebenen Befehle lassen sich unter allen gegenwärtig eingesetzten Windows-Versionen verwenden, auch wenn sie nur mit einem Vorgänger oder Nachfolger des von Ihnen eingesetzten Betriebssystems mitgeliefert werden. Einige Tools benötigen jedoch zwingend ein bestimmtes Serverbetriebssystem oder eine Mindestversion des Betriebssystems, weil sie API-Funktionen verwenden, die von Microsoft nicht für alle Versionen des Betriebssystems bereitgestellt wurden. Andere Befehle wurden von Microsoft immer weiter verbessert und verändert, so dass z.B. die Syntax und der Funktionsumfang des mit Windows 8 mitgelieferten Tools anders sind als jene des gleichnamigen Tools in einer Vorgängerversion. In solchen Fällen wird die aktuellste Version beschrieben.

Konventionen

Fett

Kennzeichnet Windows-Befehle und -Optionen.

GROSSBUCHSTABEN & FETT

Kennzeichnet interne Befehle des Kommandozeileninterpreters cmd.exe. Diese Befehle sind bei Nutzung einer alternativen Shell, z.B. der PowerShell, nicht unmittelbar verfügbar.

Kursiv

Kennzeichnet Parameter, die Sie selbst eingeben müssen.

[...]

Kennzeichnet optionale Befehlsteile.

a | b

Bedeutet, dass entweder a oder b eingesetzt werden kann.

{a | b}

Bedeutet, dass entweder a oder b eingesetzt werden muss.

HKLMHKCU

Kennzeichnen die Registrierungsbäume (Hives) HKEY_LOCAL_MACHINE und HKEY_CURRENT_USER.

MenünameMenüname

Der Pfeil (→) in Verbindung mit halbfetter Schrift beschreibt die Navigation innerhalb eines Menüs.

Folgende Abkürzungen werden zur Kennzeichnung der Herkunft der Befehle verwendet:

  • AllOS:

in allen Betriebssystemen enthalten

  • 7:

Windows 7

  • W2k8R2:

Windows Server 2008 R2

  • 8:

Windows 8

  • WS2012:

Windows Server 2012

  • WADK:

Windows Assessment and Deployment Kit

  • WAIK:

Windows Automated Installation Kit

  • WWW:

im Internet frei erhältliches Tool

Die Eingabeaufforderung

Starten unter Windows 8/Server 2012

Die neue Benutzeroberfläche begeistert oder verunsichert Anwender der neuen Windows-Version. Sie spiegelt die Absicht von Microsoft wider, den Desktop und damit klassische Windows-Anwendungen abzuschaffen, indem er nur noch als eine App unter vielen angeboten und als »legacy« deklariert ist, also als veraltet. Das Schicksal des Desktops teilt auch die Eingabeaufforderung, so dass es sich bei dieser Auflage sehr wohl um die letzte dieser Reihe handeln könnte. Dennoch ist in den aktuellen Versionen von Windows-Client und -Server die Eingabeaufforderung in ihrer vollen Funktionalität enthalten, allerdings versteckt. Am schnellsten finden Sie sie, indem Sie im Startbildschirm von Windows 8 oder Server 2012 einfach drauflostippen und entweder cmd oder Eingabeaufforderung eingeben. Sobald Windows fündig geworden ist, können Sie das Symbol zur unmittelbaren Ausführung anklicken. Diese Variante hat einen in vielen Situationen entscheidenden Nachteil, denn die Eingabeaufforderung wird in diesem Fall im Benutzerkontext aufgerufen. Da aber viele der in diesem Buch beschriebenen Befehle Administratorrechte benötigen (und seit Windows Vista/Server 2008 zudem bei standardmäßig aktivierter Benutzerkontenkontrolle die hohe Verbindlichkeitsstufe), reicht der Benutzerkontext oft nicht.

Klicken Sie also stattdessen das gefundene Symbol der Eingabeaufforderung mit der rechten Maustaste an und wählen Sie in der dann im unteren Bildschirmbereich angezeigten Symbolleiste Als Admin ausführen, um ein Fenster mit der Eingabeaufforderung mit erhöhten Rechten zu öffnen. Alternativ funktioniert nach wie vor die Tastenkombination STRG+Umschalt+ENTER bei ausgewähltem Symbol sowie zum Bestätigen der Sicherheitsabfrage ALT+J.

Soll häufig auf die Eingabeaufforderung zurückgegriffen werden, ist diese Methode nicht sonderlich praktikabel. Es empfiehlt sich das Anlegen einer Verknüpfung. Und wo sollte diese liegen? Windows 8 bietet bei Rechtsklick die Erstellung einer Verknüpfung im Startmenü (An Startmenü anheften) oder in der Taskleiste des Desktops (An Taskleiste anheften) an, wobei Letzteres erfahrungsgemäß die praktischere Variante ist.« Durch Rechtsklick auf das angeheftete Symbol, nochmaligen Rechtsklick auf den Menüeintrag Eingabeaufforderung und im folgenden Kontextmenü Anklicken von Eigenschaften können Sie einige Einstellungen für verbesserten Komfort anpassen:

Ausführen in:

Hier können Sie einen alternativen Pfad eingeben, in dem sich die Eingabeaufforderung öffnen soll, beispielsweise %WINDIR%\system32 oder einen anderen Pfad, in dem sich zusätzliche Skriptdateien oder zu bearbeitende Dateien befinden.

Tastenkombination:

Hier können Sie eine Tastenkombination festlegen, mit der die Eingabeaufforderung gestartet werden kann. Verwenden Sie dafür keine schon anderweitig im System oder in ständig laufenden Anwendungsprogrammen verwendete Kombination, um unerwartete Ergebnisse zu verhindern.

Durch Klick auf die Schaltfläche Erweitert öffnet sich das Dialogfeld Erweiterte Eigenschaften, in dem Sie durch das Kontrollkästchen Als Administrator ausführen festlegen können, dass bei jeder Ausführung der Verknüpfung die Eingabeaufforderung mit erhöhten Rechten geöffnet wird.

Weitere Einstellmöglichkeiten betreffen unter anderem Schriftart und -größe, den verfügbaren Puffer zur Zwischenspeicherung von Befehlen und die Fenstergröße. Eine Eingabeaufforderung im Vollbildmodus steht schon seit mehreren Windows-Versionen nicht mehr zur Verfügung.

Ganz klassisch können Sie eine Verknüpfung auf dem Desktop erzeugen, indem Sie mit der rechten Maustaste auf eine beliebige freie Stelle des Desktops klicken, aus dem Kontextmenü den Eintrag NeuVerknüpfung wählen, als Speicherort des Elements cmd eingeben und einen beliebigen Namen festlegen. Nach Beendigung des Assistenten können Sie auch hier die Eigenschaften der Verknüpfung bearbeiten, wie oben für das an die Taskleiste angeheftete Symbol beschrieben wurde.

Schließlich können Sie unter Windows 8/Server 2012 die Tastenkombination WIN+X verwenden und aus dem dann auf dem Desktop links unten erscheinenden Menü den Eintrag Eingabeaufforderung (Administrator) mit der Maus auswählen.

Eine aus Sicherheitsgründen wenig empfehlenswerte Alternative zur generellen Ausführung der Eingabeaufforderung und aller anderen Anwendungen mit erhöhten Rechten ist die Deaktivierung der Benutzerkontensteuerung des Betriebssystems bei gleichzeitiger Benutzung eines Benutzerkontos der Administratorengruppe.

Sie können jederzeit nachsehen, ob ein Befehlszeilenfenster mit erhöhten Rechten ausgeführt wird: In der Regel beginnt die Titelzeile des Fensters in diesem Fall mit »Administrator:«.

Eingabe von Befehlen

Befehle gibt man ein, indem man sie in die Befehlszeile tippt und mit der Enter-Taste die Ausführung auslöst. Dabei kann man in der Regel nicht viel falsch machen, abgesehen von Syntaxfehlern, Tippfehlern und der unbeabsichtigten Verwendung von nicht zur Aufgabenstellung passenden Befehlen. Dennoch sind Befehlseingaben in ihren Grundanforderungen nicht immer konsistent, so dass es sich lohnen kann, im Fehlerfall die Hilfe zum jeweiligen Befehl etwas ausführlicher zu lesen:

  • Bei der Eingabe von Befehlen ist es Ihnen freigestellt, ob Sie Groß- oder Kleinbuchstaben verwenden.

  • Befehle und Befehlsoptionen können normalerweise in Groß- oder Kleinbuchstaben eingegeben werden. Ist das der Fall, werden sie in diesem Buch kleingeschrieben. Nur Optionen, die großgeschrieben werden müssen, werden in Großbuchstaben geschrieben.

  • Befehlsoptionen werden normalerweise durch einen Schrägstrich eingeleitet: /x. In vielen Fällen kann der Schrägstrich durch ein Minuszeichen ersetzt werden. Einige Befehle akzeptieren nur das Minuszeichen.

  • Die Reihenfolge der Optionen ist nicht einheitlich und nicht immer beliebig. Bitte entnehmen Sie sie der Syntax des jeweiligen Befehls.

  • Einzelne Parameter werden abhängig vom Befehl durch Leerzeichen, Kommata oder Strichpunkte voneinander getrennt.

  • Parameter mit Leerzeichen, beispielsweise Verzeichnispfade und Dateinamen, müssen in der Regel von Anführungszeichen umschlossen werden.

  • Regions- und Spracheinstellungen sowie die Sprachversion des Betriebssystems können die Syntax beeinflussen. In diesem Buch wird die deutschsprachige Version des Betriebssystems mit den Einstellungen für Deutschland verwendet.

  • Befehle können in der nachfolgenden Zeile fortgesetzt werden, wenn die vorherige Zeile mit dem ^-Zeichen beendet wurde.

  • Durch ein vorangestelltes ^-Zeichen wird auch verhindert, dass der Befehlsinterpreter das folgende Zeichen interpretiert. Solche Zeichen werden auch »Escape-Zeichen« genannt.

  • Mehrere Befehle können mit dem &-Zeichen verknüpft werden: Befehl1 & Befehl2. Die Befehle werden der Reihe nach ausgeführt.

  • Die Ausführung eines Befehls kann davon abhängig gemacht werden, ob der vorangegangene Befehl korrekt ausgeführt werden konnte. Dazu werden die Befehle mit && bzw. || verknüpft:

    • Befehl1 && Befehl2

    • Befehl2 wird nur ausgeführt, wenn Befehl1 erfolgreich ausgeführt werden konnte.

    • Befehl1 || Befehl2

    • Befehl2 wird nur ausgeführt, wenn Befehl1 nicht erfolgreich ausgeführt werden konnte.

Umleitung der Ein- und Ausgabe

<Datei

Liest Standardeingabe aus einer Datei statt von der Tastatur.

>Datei1>Datei

Schreibt Standardausgabe in eine Datei statt auf den Bildschirm.

>>Datei1>>Datei

Hängt Standardausgabe an eine Datei an.

2>Datei

Schreibt Standardfehlerausgabe in eine Datei.

2>>Datei

Hängt Standardfehlerausgabe an eine Datei an.

>Datei 2>&1

Schreibt Standardausgabe in eine Datei und leitet Standardfehlerausgabe zur Standardausgabe um. Damit werden Standardausgabe und Standardfehlerausgabe in dieselbe Datei geschrieben.

Befehl1 |Befehl2Befehl1 0>Befehl2

Stellt eine Verknüpfung zwischen der Standardausgabe des ersten Befehls (Befehl1) und der Standardeingabe des zweiten Befehls (Befehl2) her.

In Einzelfällen, beispielsweise für die Wiederverwendung von komplexen Werten wie GUIDs zur Vermeidung von Tippfehlern, ist es hilfreich, den gewünschten Ausschnitt der Eingabeaufforderung in die Zwischenablage zu kopieren und von dort entweder direkt oder nach Bearbeitung im Editor wieder einzufügen. Dafür benutzen Sie in der Titelzeile des Fensters der Eingabeaufforderung das Systemmenü oben links, klicken auf Bearbeiten/Markieren und können dann mit der Maus oder mit der Tastatur unter Zuhilfenahme der Pfeiltasten und der gedrückten Umschalttaste den zu kopierenden Bereich in Rechteckform auswählen. Sobald Sie die Auswahl abgeschlossen haben, verwenden Sie die Eingabetaste, um den Text des ausgewählten Bereichs in die Zwischenablage zu kopieren.

Zum Einfügen aus der Zwischenablage verwenden Sie wiederum den Menüeintrag Bearbeiten/Einfügen aus dem Systemmenü.

Umgebungsvariablen

Dieser Abschnitt erklärt einige wichtige Windows-Umgebungsvariablen. Variablen werden in Eingabeaufforderung und Batchdateien mit dem Prozentzeichen (%) ausgelesen, zum Beispiel zeigt der Befehl echo %SystemRoot% den Pfad des Windows-Ordners. Damit können Anwendungen und Skripten auf unterschiedlich eingerichteten Systemen ausgeführt werden, ohne dass eine abweichende Ordnerstruktur für die Aufrufe manuell berücksichtigt werden müsste. Die aktiven System- und Benutzervariablen können mit set angezeigt und temporär angepasst sowie mit setx dauerhaft geändert werden.

COMPUTERNAME

Enthält den Computernamen der Windows-Installation.

HOMEDRIVE und HOMEPATH

Das Laufwerk und der Pfad auf diesem Laufwerk zum Benutzerprofilordner des angemeldeten Benutzers.

PATH

Mehrere durch Semikolon getrennte Verzeichnisse, die in dieser Reihenfolge nach Befehlen durchsucht werden, wenn diese ohne vorangestellten Pfad aufgerufen werden.

PATHEXT

Mehrere durch Semikolon getrennte Dateierweiterungen, die in dieser Reihenfolge an einen Befehl ohne Erweiterung angehängt werden, um die ausführbare Datei für den Befehl zu finden. Diese Erweiterungen müssen den voranstehenden Punkt beinhalten, also beispielsweise .exe oder .cmd.

ProgramFiles

Der Verzeichnisname des Programmordners (ab Vista normalerweise C:\Program Files).

Warnung

Bei 64-Bit-Versionen des Betriebssystems handelt es sich um den Programmordner für 64-Bit-Software.

ProgramFiles(x86)

Der Verzeichnisname des Programmordners für 32-Bit-Anwendungen in einem 64-Bit-Betriebssystem.

SystemRoot und windir

Der Verzeichnisname des Windows-Systemverzeichnisses (normalerweise C:\WINDOWS).

TEMP und TMP

Der komplette Pfad eines Verzeichnisses, das von Anwendungen und vom Betriebssystem zur Ablage temporärer Dateien verwendet wird.

USERNAME

Der Name des angemeldeten Benutzers.

USERPROFILE

Der Pfad zum Profilverzeichnis des angemeldeten Benutzers.

Installation zusätzlicher Administrationstools

Anders als die Datenträger inzwischen veralteter Windows-Versionen enthalten die Installationsmedien von Windows 8 und Server 2012 keine Support-Tools, da es diese bereits seit Vista nicht mehr gibt. Die Support-Tools von Windows Server 2003 können jedoch (noch) von den Microsoft-Downloadseiten heruntergeladen und trotz der Warnung des Installationsprogramms mit Einschränkungen auch unter aktuellen Windows-Versionen verwendet werden.

Microsoft hat zudem die Praxis aufgegeben, Zusatztools über Resource Kits zugänglich zu machen. Stattdessen werden nützliche Programme direkt veröffentlicht, beispielsweise die Werkzeuge der Sysinternals-Suite. Auf einige dieser Programme gehen wir in diesem Buch ein.

Die Resource Kits älterer Windows-Versionen sind bislang unverändert erhältlich. Nützlich sind insbesondere die Tools des Windows Server 2003 Resource Kit, die Microsoft zum freien Download bereitstellt. Die darin enthaltenen Programme funktionieren trotz der Warnung des Installationsprogramms meist auch unter Windows 8/Server 2012. Gerade bei systemnahen Programmen ist generell nicht auszuschließen, dass diese in Versionen des Betriebssystems, für die sie nicht vorgesehen waren, tatsächlich nicht korrekt funktionieren oder das System sogar beschädigen können. Daher sollten Sie sich vor dem Einsatz solcher Werkzeuge auf produktiven Systemen genauestens über eventuelle Risiken informieren. Zudem sollten Sie Programme, die Sie möglicherweise zukünftig einsetzen wollen, herunterladen und lokal abspeichern. Die Erfahrungen der Vergangenheit haben gezeigt, dass Microsoft sich nicht scheut, beliebte Hilfsprogramme von der Website zu nehmen, wenn sie in Einzelfällen oder bei zu unbedarfter Nutzung unerwünschte Nebenwirkungen zeigen können oder aus Microsoft-Sicht veraltet sind. In der aktuellen Ausgabe dieses Buches werden diese Programme nicht mehr behandelt.

Seit Server 2008 hat Microsoft die Serververwaltungstools (ehemals enthalten in der Datei adminpak.msi) umbenannt in »Remoteserver-Verwaltungstools« (Remote Server Administration Tools, RSAT). Diese dienen der Verwaltung von Servern ab Version 2003. Unter Server 2008 R2 sind sie als Feature im Server Manager installierbar, unter Server 2012 im Dashboard, unter Windows 8 über die Tastenkombination WIN+X und dann im Menü SystemsteuerungProgrammeWindows-Features aktivieren oder deaktivieren. Allerdings müssen die RSAT für die Nutzung unter Windows 8 und Windows 7 zunächst von Microsoft heruntergeladen und auf herkömmliche Art und Weise installiert werden. Berücksichtigen Sie, dass die Werkzeuge wählerisch beim Clientbetriebssystem sind – so lassen sich die RSAT für Server 2012 beispielsweise nicht unter Windows 7 installieren.

Für die Unterstützung der automatisierten Installation von aktuellen Windows-Versionen in Unternehmen stellt Microsoft das Windows Assessment and Deployment Kit zum Herunterladen bereit, das auch einige nützliche Werkzeuge für die Eingabeaufforderung enthält. Für frühere Versionen von Windows hat diese Sammlung die Bezeichnung Windows Automated Installation Kit (WAIK).

Hilfebefehle und -dateien

help Befehl

Zeigt die Hilfe für viele Windows-Standardbefehle an.

Befehl /?

Zeigt bei den meisten ausführbaren Dateien einen Hilfetext an.

net help Befehl

Zeigt die Hilfe für einen der net-Befehle an. Beispiel: net help user erklärt die Optionen des Befehls net user.

net helpmsg nnnn

Zeigt den Fehlertext zum Windows-Fehler mit der Nummer nnnn an.

Das Hilfe- und Supportcenter in Windows 7 und Windows Server 2008 R2 hat eine Befehlszeilenreferenz lediglich als Verweis auf englischsprachige Onlinequellen integriert, unter Windows 8 und Windows Server 2012 fehlt eine solche bislang ganz oder ist sehr gut verborgen, ein weiteres Indiz dafür, dass die Tage der klassischen Eingabeaufforderung gezählt sein dürften.

Resource Kits, Support Tools, Windows Assessment and Deployment Kit

Die Resource Kits und Support Tools enthalten weitere, zum Teil sehr umfangreiche Hilfedateien, die Sie am einfachsten über das Startmenü öffnen. Leider können diese Hilfedateien unter Windows 7/2008 R2 und Folgeversionen nicht mehr direkt geöffnet werden, da die Hilfsanwendung helpctr in diesen nicht mehr existiert. Sofern erforderlich, kann die Datei WinHlp32.exe bei Microsoft in einer dem jeweiligen Betriebssystem angepassten Version heruntergeladen werden. Teilweise sind die Hilfedateien der Zusatzwerkzeuge nur in englischer Sprache verfügbar.

Windows PowerShell

Seit die Windows PowerShell im Jahr 2007 erstmals veröffentlicht wurde, ist ihre Integration in Microsoft-Betriebssysteme und -anwendungen weit vorangeschritten. In Windows Server 2012 und Windows 8 ist Version 3.0 der PowerShell integriert. Bei der PowerShell handelt es sich um eine .NET-basierte Skriptumgebung, die sowohl die klassische Eingabeaufforderung als auch früher beliebte Skriptsprachen wie VB-Script beerben soll.

Durch die Abhängigkeit vom .NET-Framework ist sie in früheren Windows-Versionen unter Windows PE nicht verfügbar, ebenso wenig in der Installationsvariante Server Core in den Betriebssystemversionen vor Windows Server 2012. Sie ist nicht textbasiert wie andere eingabezeilenorientierte Benutzeroberflächen, sondern gibt Objekte über Pipelines (|) von einem Befehl zum anderen weiter. Die Benennung der Befehle (die als »Cmdlets« bezeichnet werden) folgt dem Schema Verb-Nomen, z.B. get-command (Auflistung aller Befehle). Die PowerShell verwendet ein erweiterbares Providermodell, um neben dem Dateisystem folgende Datenspeicher als Laufwerk anzusprechen: Registrierung, Zertifikatsspeicher, Umgebungsvariablen, Aliase, Variablen und Funktionen.

Mit der PowerShell 2.0, die für Windows Server 2008 R2 und Windows 7 schon vorinstalliert ist und für die Betriebssystemversionen ab Windows XP/Server 2003 heruntergeladen werden kann, kamen weitere Möglichkeiten hinzu: Verwaltung von Remotecomputern, Unterstützung von Hintergrundprozessen, ein Provider für Active Directory (das entsprechende Modul lässt sich allerdings nur in Windows Server 2008 R2 und Windows 7 ohne Einschränkungen installieren und einsetzen) sowie ein Editor mit Debuggingfunktionen.

PowerShell 3.0, die in Windows Server 2012 und Windows 8 integriert ist, bringt nochmals eine erhebliche Steigerung des Funktionsumfangs mit sich. PowerShell-Workflows erlauben die Nutzung der Windows Workflow Foundation. Die Unterstützung des .NET-Framework 4 wurde integriert. Windows Server 2012 bietet mit PowerShell Web Access die Möglichkeit, PowerShell-Befehle und -Skriptdateien in einer webbasierten Konsole auszuführen. Das CIM (Common Information Model) wurde als Methode zur Kommunikation integriert. Vorhandene Module werden automatisch importiert, wenn ein in ihnen enthaltenes Cmdlet aufgerufen wird. Intellisense und Tab-Vervollständigung helfen bei der Eingabe von Befehlen. Eine Hilfe, die online aktualisiert werden kann, steuert zur Funktionalität bei. Das sind nur einige der Vorteile, die zeigen, dass die PowerShell mittlerweile »erwachsen geworden« ist.

Im Gegensatz zu früheren Versionen lässt sich die PowerShell 3.0 auch in Windows PE (Windows Preinstallation Environment) integrieren. Zudem wurden zahlreiche neue Befehle hinzugefügt und bestehende erweitert. Für Windows 7 erhalten Sie die PowerShell 3.0 als Bestandteil des Windows Management Framework unter http://www.microsoft.com/en-us/download/details.aspx?id=34595. Bitte beachten Sie, dass zahlreiche mit PowerShell 3.0 eingeführte Befehle nur unter Windows 8/Server 2012 zur Verfügung stehen.

Um zu ermitteln, welche Version der PowerShell aktuell auf Ihrem Rechner installiert ist, führen Sie den folgenden Befehl aus:

if (test-path variable:psversiontable)
{$psversiontable.psversion} else {[version]"1.0.0.0"}

Die Ausgabe zeigt in der Spalte Major die Versionsnummer an.

Auch wenn es nach wie vor Anwendungsfälle gibt, in denen die PowerShell im Vergleich zu den spezialisierten Befehlen der Eingabeaufforderung zu komplex ist, um mal eben ein bestimmtes Ziel zu erreichen, gibt es kaum eine bislang in den Bereich der Eingabeaufforderung fallende Aufgabe, die sich nicht mit der PowerShell lösen ließe.

Zudem bietet die PowerShell zahllose Möglichkeiten, die mit Bordmitteln in der Eingabeaufforderung nicht und auch in anderen Skriptsprachen nicht trivial umzusetzen sind. Da fast alle Befehle der Eingabeaufforderung – mit Ausnahme der Parameterübergabe für interne Befehle – unmittelbar auch in der PowerShell-Konsole funktionieren, besteht eigentlich kaum mehr ein Grund, noch aus der Eingabeaufforderung heraus zu arbeiten. Lediglich die ISE (Integrated Scripting Environment, integrierte Skriptumgebung) weist bei der Unterstützung von einzelnen Befehlen der Eingabeaufforderung noch Mankos auf. Die dort integrierte umfassende Hilfe unterstützt dafür den Anwender dabei, die anfangs steile Lernkurve beim Erlernen der PowerShell-Skriptsprache zu bewältigen.

Im weiteren Verlauf dieses Buches werden, sofern es sich anbietet, Möglichkeiten des Einsatzes der PowerShell oder einer Kombination aus PowerShell und Befehlszeile gezeigt. Die praxisnahen Beispiele werden zeigen, dass die PowerShell ihre Stärken auch in Alltagssituationen voll zur Geltung bringen kann. Auf die PowerShell bezogene Abschnitte werden als PowerShell-Tipp gekennzeichnet. Die aufgeführten Beispiele und Hinweise sollen weniger perfekt sein als vielmehr die vielfältigen Möglichkeiten der Problemlösung mit PowerShell nahebringen oder beim Finden dafür relevanter Cmdlets helfen.