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
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
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.
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.
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.
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.
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üname → Menü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:
| in allen Betriebssystemen enthalten |
| Windows 7 |
| Windows Server 2008 R2 |
| Windows 8 |
| Windows Server 2012 |
| Windows Assessment and Deployment Kit |
| Windows Automated Installation Kit |
| im Internet frei erhältliches Tool |
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 Neu → Verknü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:«.
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.
<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ü.
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).
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.
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ü Systemsteuerung → Programme → Windows-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).
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.
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.
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.