Вы находитесь на странице: 1из 27

THEMA

Einstellungsvariablen
KURZBESCHREIBUNG
Variablen zur Anpassung des Verhaltens von Windows PowerShell
DETAILBESCHREIBUNG
Windows PowerShell enthlt einen Satz von Variablen, mit denen
Sie das Verhalten anpassen knnen. Diese "Einstellungsvariablen"
werden analog zu den Optionen in GUI-basierten Systemen verwendet.
Die Einstellungsvariablen wirken sich auf die Betriebssystemumge-
bung von Windows PowerShell sowie auf alle in der Umgebung
ausgefhrten Befehle aus. In vielen Fllen verfgen die Cmdlets
ber Parameter, mit denen Sie das bevorzugte Verhalten fr einen
bestimmten Befehl berschreiben knnen.
In der folgenden Tabelle sind die Einstellungsvariablen und ihre
Standardwerte aufgefhrt.
Variable Standardwert
-------- -------------
$ConfirmPreference High
$DebugPreference SilentlyContinue
$ErrorActionPreference Continue
$ErrorView NormalView
$FormatEnumerationLimit 4
$LogCommandHealthEvent False (nicht protokolliert)
$LogCommandLifecycleEvent False (nicht protokolliert)
$LogEngineHealthEvent True (protokolliert)
$LogEngineLifecycleEvent True (protokolliert)
$LogProviderLifecycleEvent True (protokolliert)
$LogProviderHealthEvent True (protokolliert)
$MaximumAliasCount 4096
$MaximumDriveCount 4096
$MaximumErrorCount 256
$MaximumFunctionCount 4096
$MaximumHistoryCount 64
$MaximumVariableCount 4096
$OFS (Leerzeichen (" "))
$OutputEncoding ASCIIEncoding-Objekt
$ProgressPreference Continue
$PSEmailServer (None)
$PSSessionApplicationName WSMAN
$PSSessionConfigurationName http://schemas.microsoft.com/powershell
/microsoft.powershell
$PSSessionOption (Siehe unten)
$VerbosePreference SilentlyContinue
$WarningPreference Continue
$WhatIfPreference 0
Windows PowerShell enthlt auch folgende Umgebungsvariablen, in
denen Benutzereinstellungen gespeichert werden. Weitere
Informationen ber die Umgebungsvariablen finden Sie unter
"about_environment_variables".
Variable
--------
PSModulePath
ARBEITEN MIT EINSTELLUNGSVARIABLEN
In diesem Dokument werden die einzelnen Einstellungsvariablen
beschrieben.
Um den aktuellen Wert einer bestimmten Einstellungsvariable
anzuzeigen, geben Sie den Namen der Variablen ein. Daraufhin wird
der Wert von Windows PowerShell angezeigt. Mit dem folgenden
Befehl wird beispielsweise der Wert der Variablen
"$ConfirmPreference" angezeigt.
PS> $ConfirmPreference
High
Um den Wert einer Variable zu ndern, verwenden Sie eine
Zuweisungsanweisung. In der folgenden Anweisung wird
beispielsweise der Variablen "$ConfirmPreference" der Wert
"Medium" zugewiesen.
PS> $ConfirmPreference = "Medium"
Die Werte, die Sie festlegen, gelten wie alle Variablen fr das
aktuelle Windows PowerShell-Fenster. Fgen Sie die Werte dem
Windows PowerShell-Profil hinzu, wenn diese fr alle Windows
PowerShell-Fenster gelten sollen. Weitere Informationen finden
Sie unter "about_profiles".
REMOTE ARBEITEN
Wenn Sie Befehle auf einem Remotecomputer ausfhren, sind die
Remotebefehle nur von den Einstellungen im Windows PowerShell-Client
auf dem Remotecomputer abhngig. Wenn Sie beispielsweise einen
Remotebefehl ausfhren, bestimmt der Wert der Variablen
"$DebugPreference" auf dem Remotecomputer, wie PowerShell auf
Debugmeldungen reagiert.
Weitere Informationen ber Remotebefehle finden Sie unter
"about_remote".
$ConfirmPreference
------------------
Gibt an, welche Cmdlet-Aktionen automatisch eine Besttigung vom
Benutzer anfordern, bevor sie ausgefhrt werden.

Wenn der Wert "$ConfirmPreference" (High, Medium, Low, None)
grer oder gleich dem Risiko der Cmdlet-Aktion (High, Medium,
Low, None) ist, fordert Windows PowerShell vor dem Ausfhren der
Aktion automatisch eine Besttigung vom Benutzer an.
Mit dem Confirm-Parameter eines Cmdlet knnen Sie die Einstellung
fr einen bestimmten Befehl berschreiben.
Gltige Werte:
None: Cmdlet-Aktionen werden nicht automatisch besttigt. Benutz
er
mssen die Besttigung fr bestimmte Befehle mit dem Confirm-P
arameter
anfordern.
Low: Cmdlet-Aktionen mit niedrigem, mittlerem oder hohem Risi
ko werden
automatisch besttigt. Mit "-Confirm:$false" knnen Sie die
Besttigung fr einen bestimmten Befehl unterdrcken.
Medium: Cmdlet-Aktionen mit mittlerem oder hohem Risiko werden
automatisch besttigt. Mit "-confirm" knnen Sie die Besttigu
ng
fr einen bestimmten Befehl aktivieren. Mit "confirm:$fals
e" knnen
Sie die Besttigung fr einen bestimmten Befehl unterdrcken.
High: Cmdlet-Handlungen mit hohem Risiko werden
(Standard) automatisch besttigt. Mit "-confirm" knnen Sie die Besttigu
ng
fr einen bestimmten Befehl aktivieren. Mit "-confirm:$fal
se"
knnen Sie die Besttigung fr einen bestimmten Befehl unterdrc
ken.
DETAILBESCHREIBUNG
Wenn sich eine Cmdlet-Aktion erheblich auf das System
auswirkt, beispielsweise durch das Lschen von Daten oder
Nutzen einer erheblichen Menge an Systemressourcen, knnen
Sie von Windows PowerShell vor dem Ausfhren der Aktion
automatisch zur Besttigung aufgefordert werden.
Beispiel:
PS> remove-item pref2.txt
Besttigung
Mchten Sie diese Aktion wirklich ausfhren?
Ausfhren des Vorgangs "Datei entfernen" fr das Ziel
"C:\pref2.txt".
[J] Ja [A] Ja, alle [N] Nein [K] Nein, keine [H] Anhalten [?] Hilfe
(Der Standardwert ist "J"):
Die Schtzung des Risikos ist Teil des Cmdlet "ConfirmImpact".
Eine nderung ist nicht mglich.
Cmdlets, die mglicherweise ein Risiko fr das System
darstellen, verfgen ber einen Confirm-Parameter, mit dem
Sie eine Besttigung fr einen bestimmten Befehl anfordern
oder unterdrcken knnen.
Da die meisten Cmdlets den Standardrisikowert "Medium" verwenden,
und der Standardwert von "$ConfirmPreference" gleich "High" ist,
erfolgt nur selten eine automatische Besttigung. Sie knnen die
automatische Besttigung jedoch aktivieren, indem Sie den Wert von
"$ConfirmPreference" in "Medium" oder "Low" ndern.
BEISPIELE
In diesem Beispiel werden die Auswirkungen des Standardwerts von
"$ConfirmPreference" veranschaulicht. Beim Wert "High" werden nur
Cmdlet-Aktionen mit hohem Risiko besttigt. Da die meisten Aktionen
ein mittleres Risiko aufweisen, werden sie nicht automatisch
besttigt. Mit dem Confirm-Parameter des Cmdlet knnen Sie jedoch
eine Besttigung fr einen bestimmten Befehl anfordern.
PS> $confirmpreference #Aktuellen Wert der Variablen abru
fen
High
PS> remove-item temp1.txt #Datei lschen
PS> #Gelscht ohne Besttigung
PS> remove-item temp2.txt -confirm #Confirm-Parameter verwenden
Besttigung
Mchten Sie diese Aktion wirklich ausfhren?
Ausfhren des Vorgangs "Datei entfernen" fr das Ziel
"C:\temp2.txt".
[J] Ja [A] Ja, alle [N] Nein [K] Nein, keine [H] Anhalten [?] Hilfe (D
er Standardwert ist "J"):
In diesem Beispiel werden die Auswirkungen einer nderung des
Werts von "$ConfirmPrefernce" in "Medium" veranschaulicht. Da
die meisten Cmdlet-Aktionen ein mittleres Risiko aufweisen,
werden sie automatisch besttigt. Mit dem Confirm-Parameter
und dem Wert "$false" knnen Sie die Besttigungsaufforderung
fr einen bestimmten Befehl unterdrcken.

PS> $confirmpreference = "Medium"
#Werts von "$ConfirmPreference" ndern
PS> remove-item temp2.txt
#Besttigung nach Lschen einer Datei
Besttigung
Mchten Sie diese Aktion wirklich ausfhren?
Ausfhren des Vorgangs "Datei entfernen" fr das Ziel
"C:\temp2.txt".
[J] Ja [A] Ja, alle [N] Nein [K] Nein, keine [H] Anhalten
[?] Hilfe (Der Standardwert ist "J"):
PS> remove-item temp3.txt -confirm:$false #Besttigung mit
dem Confirm-Parameter unte
rdrcken
PS>
$DebugPreference
------------------
Bestimmt, wie PowerShell auf Debugmeldungen reagiert, die von einem
Skript, Cmdlet oder Anbieter oder durch einen Write-Debug-Befehl in
der Befehlszeile generiert werden.
Bei den Debugmeldungen, die von einigen Cmdlets angezeigt
werden, handelt es sich um sehr technische Meldungen, die fr
Programmierer und Mitarbeiter des technischen Supports
bestimmt sind. Standardmig werden Debugmeldungen nicht
angezeigt. Sie knnen Debugmeldungen jedoch anzeigen, indem
Sie den Wert von "$DebugPreference" ndern.

Sie knnen auch den allgemeinen Debug-Parameter eines Cmdlet
verwenden, um die Debugmeldungen fr einen bestimmten Befehl
anzuzeigen oder auszublenden. Weitere Informationen erhalten
Sie mit folgendem Befehl: "get-help about_commonparameters".
Gltige Werte:
Stop: Zeigt die Debugmeldung an und beendet die
Ausfhrung. Schreibt einen Fehler in die Konsole.
Inquire: Zeigt die Debugmeldung an und
fragt, ob Sie fortfahren mchten.
Continue: Zeigt die Debugmeldung an und
fhrt mit der Ausfhrung fort.
SilentlyContinue : Keine Auswirkungen. Die Debugmeldung wird nicht
(Standard) angezeigt und die Ausfhrung ohne
Unterbrechung fortgesetzt.

BEISPIELE

In den folgenden Beispielen werden die Auswirkungen einer
nderung der Werte von "$DebugPreference" bei Eingabe eines
Write-Debug-Befehls in der Befehlszeile veranschaulicht. Die
nderung wirkt sich auf alle Debugmeldungen einschlielich der
Meldungen aus, die von Cmdlets und Skripts generiert wurden.
Weiterhin wird in den Beispielen die Verwendung des allgemeinen
Debug-Parameters veranschaulicht, der die Debugmeldungen fr
einen einzelnen Befehl anzeigt oder ausblendet.
In diesem Beispiel werden die Auswirkungen des Standardwerts
"SilentlyContinue" veranschaulicht. Die Debugmeldung wird nicht
angezeigt und die Verarbeitung fortgesetzt. Der abschlieende
Befehl berschreibt die Einstellung fr einen einzelnen Befehl
mit dem Debug-Parameter.
PS> $debugpreference # Aktuellen Wert abrufen
SilentlyContinue $DebugPreference
PS> write-debug "Hallo, Welt"
PS> # Die Debugmeldung wird nicht an
gezeigt.

PS> write-debug "Hallo, Welt" -Debug # Debug-Parameter verwenden
DEBUG: Hallo, Welt # Debugmeldung wird angefordert
Besttigung?
Vorgang fortsetzen?
[J] Ja [A] Ja, alle [B] Befehl anhalten [H] Anhalten [?] Hilfe (Der Stan
dardwert ist "J"):

In diesem Beispiel werden die Auswirkungen des Werts "Continue"
veranschaulicht. Der abschlieende Befehl verwendet den
Debug-Parameter mit dem Wert "$false", um die Meldung fr einen
einzelnen Befehl zu unterdrcken.
PS> $debugpreference = "Continue" # Wert in "Continue" ndern
PS> write-debug "Hallo, Welt"
DEBUG: Hallo, Welt # Die Debugmeldung wird
PS> angezeigt und die Verarbeitung fort
gesetzt.

PS> write-debug "Hallo, Welt" -Debug:$false
# Debug-Parameter mit
"false" verwenden
PS> # Die Debugmeldung wird nicht angezei
gt.

In diesem Beispiel werden die Auswirkungen des Werts "Stop"
veranschaulicht. Der abschlieende Befehl verwendet den
Debug-Parameter mit dem Wert "$false", um die Meldung fr einen
einzelnen Befehl zu unterdrcken.
PS> $debugpreference = "Stop" # Wert in "Stop" ndern
PS> write-debug "Hallo, Welt"
DEBUG: Hallo, Welt
Write-Debug : Die Befehlsausfhrung wurde beendet, da die
Shellvariable "DebugPreference" auf Stop festgelegt ist.
Bei Zeile:1 Zeichen:12
+ write-debug <<<< "Hallo, Welt"
PS> write-debug "Hallo, Welt" -Debug:$false
# Debug-Parameter mit
"$false" verwenden
PS> # Die Debugmeldung wird nicht angeze
igt
und die Verarbeitung nicht beendet
.

In diesem Beispiel werden die Auswirkungen des Werts "Inquire"
veranschaulicht. Der abschlieende Befehl verwendet den
Debug-Parameter mit dem Wert "$false", um die Meldung fr einen
einzelnen Befehl zu unterdrcken.
PS> $debugpreference = "Inquire"
PS> write-debug "Hallo, Welt"
DEBUG: Hallo, Welt
Besttigung
Vorgang fortsetzen?
[J] Ja [A] Ja, alle [B] Befehl anhalten [H] Anhalten [?] Hilfe (Der Stan
dardwert ist "J"):
PS> write-debug "Hallo, Welt" -Debug:$false
# Debug-Parameter mit
"$false" verwenden
PS> # Die Debugmeldung wird nicht angeze
igt
und die Verarbeitung ohne
Unterbrechung fortgesetzt.
$ErrorActionPreference
----------------------
Bestimmt, wie Windows PowerShell in der Befehlszeile oder in einem
Skript, Cmdlet oder Anbieter auf einen Fehler ohne Abbruch (ein
Fehler, durch den die Cmdlet-Verarbeitung nicht beendet wird)
reagiert, beispielsweise auf Fehler, die vom Cmdlet "Write-Error"
generiert werden.
Sie knnen auch den allgemeinen ErrorAction-Parameter eines
Cmdlet verwenden, um die Einstellung fr einen bestimmten
Befehl zu berschreiben. Weitere Informationen erhalten Sie
mit folgendem Befehl: "get-help about_commonparameters".
Gltige Werte:
Stop: Zeigt die Fehlermeldung an und beendet die
Ausfhrung.
Inquire: Zeigt die Fehlermeldung an und
fragt, ob Sie fortfahren mchten.
Continue: Zeigt die Fehlermeldung an und
setzt die Ausfhrung fort.
SilentlyContinue: Keine Auswirkungen. Die Fehlermeldung
(Standard) wird nicht angezeigt und die Ausfhrung
ohne Unterbrechung fortgesetzt.
Der allgemeine $ErrorActionPreference-Parameter und der
allgemeine ErrorAction-Parameter haben keine Auswirkungen auf
die Reaktion von Windows PowerShell auf Fehler mit Abbruch
(Fehler, durch die die Cmdlet-Verarbeitung beendet wird).
Weitere Informationen ber den allgemeinen ErrorAction-Parameter
erhalten Sie mit folgendem Befehl: "get-help about_commonpara
meters".
BEISPIELE
In diesen Beispielen werden die Auswirkungen verschiedener Werte
von "$ErrorActionPreference" sowie die Verwendung des allgemeinen
ErrorAction-Parameters zum berschreiben der Einstellung fr
einen einzelnen Befehl veranschaulicht. Der ErrorAction-Parameter
verfgt ber die gleichen gltigen Werte wie die Variable
"$ErrorActionPreference".

In diesem Beispiel werden die Auswirkungen des Werts "Continue"
(Standard) veranschaulicht.
PS> $erroractionpreference
Continue # Wert der Einstellung anzeigen

PS> write-error "Hallo, Welt"
# Fehler ohne Abbruch generieren
write-error "Hallo, Welt" : Hallo, Welt
# Die Fehlermeldung wird angezeigt
und die Ausfhrung fortgefhrt.
PS> write-error "Hallo, Welt" -ErrorAction:SilentlyContinue
# ErrorAction-Parameter mit dem Wert
"SilentlyContinue" verwenden
PS>
# Die Fehlermeldung wird nicht
angezeigt und die Ausfhrung fortgefhrt.
In diesem Beispiel werden die Auswirkungen des Werts
"SilentlyContinue" veranschaulicht.
PS> $ErrorActionPreference = "SilentlyContinue"
# Wert der Einstellung ndern
PS> write-error "Hallo, Welt"
# Fehlermeldung generieren
PS>
# Fehlermeldung unterdrcken
PS> write-error "Hallo, Welt" -erroraction:continue
# ErrorAction-Parameter mit dem Wert
"Continue" verwenden
write-error "Hallo, Welt" -erroraction:continue: Hallo, Welt
# Die Fehlermeldung wird
angezeigt und die Ausfhrung fortgesetzt.

In diesem Beispiel werden die Auswirkungen eines realen Fehlers
veranschaulicht. In diesem Fall wird die nicht vorhandene Datei
"nofile.txt" vom Befehl abgerufen. Auerdem wird im Beispiel die
Einstellung mit dem allgemeinen ErrorAction-Parameter berschrieben.
PS> $erroractionpreference
SilentlyContinue # Wert der Einstellung anzeigen
PS> get-childitem -path nofile.txt
PS> # Fehlermeldung unterdrcken
PS> $ErrorActionPreference = "Continue"
# Wert in "Continue" ndern
PS> get-childitem -path nofile.txt
Get-ChildItem : Der Pfad 'C:\nofile.txt' kann nicht gefunden
werden, da er nicht vorhanden ist.
Bei Zeile:1 Zeichen:4
+ get-childitem <<<< nofile.txt
PS> get-childitem -path nofile.txt -erroraction SilentlyContinue
# ErrorAction-Parameter verwenden
PS>
# Fehlermeldung unterdrcken

PS > $ErrorActionPreference = "Inquire"
# Wert in "Inquire" ndern
PS> get-childitem -path nofile.txt
Besttigung
Der Pfad 'C:\nofile.txt' kann nicht gefunden werden, da er nicht vorhand
en ist.
[J] Ja [A] Ja, alle [B] Befehl anhalten [H] Anhalten [?] Hilfe (der Stan
dardwert ist "J"): a
Get-ChildItem : Der Pfad 'C:\nofile.txt' kann nicht gefunden
werden, da er nicht vorhanden ist.
Bei Zeile:1 Zeichen:4
+ get-childitem <<<< nofile.txt
PS> $ErrorActionPreference = "Continue"
# Wert in "Continue" ndern
PS> Get-Childitem nofile.txt -erroraction "Inquire"
# Einstellungswert mit dem
ErrorAction-Parameter berschreiben
Besttigung
Der Pfad 'C:\nofile.txt' kann nicht gefunden werden, da er nicht vorhand
en ist.
[J] Ja [A] Ja, alle [B] Befehl anhalten [H] Anhalten [?] Hilfe (Der Stan
dardwert ist "J"):
$ErrorView
----------
Bestimmt das Anzeigeformat von Fehlermeldungen in Windows
PowerShell.
Gltige Werte:
NormalView : Eine detaillierte Ansicht
(Standard) fr die meisten Benutzer. Besteht aus einer Beschr
eibung des
Fehlers, dem Namen des Objekts fr den Fehler sowi
e Pfeilen
(<<<<), die auf die Worte im Befehl zeigen, die
den Fehler
verursacht haben.
CategoryView: Eine kompaktere strukturierte
Ansicht fr Produktionsumgebungen. Das Format
ist:{Category}: ({TargetName}:{TargetType}):[{Ac
tivity}],
{Reason}
Weitere Informationen ber die Felder in CategoryView finden
Sie unter "ErrorCategoryInfo-Klasse" im Windows PowerShell-SDK.

BEISPIELE
In diesem Beispiel werden die Auswirkungen der ErrorView-Werte
veranschaulicht.
In diesem Beispiel wird veranschaulicht, wie ein Fehler angezeigt
wird, wenn "$ErrorView" den Wert "NormalView" aufweist. In diesem
Fall wird eine nicht vorhandene Datei mit dem Befehl
"Get-ChildItem" gesucht.
PS> $ErrorView # Wert berprfen
NormalView
PS> get-childitem nofile.txt # Nicht vorhandene Datei suchen
Get-ChildItem : Der Pfad 'C:\nofile.txt' kann nicht gefunden
werden, da er nicht vorhanden ist.
Bei Zeile:1 Zeichen:14
+ get-childitem <<<< nofile.txt
In diesem Beispiel wird veranschaulicht, wie der gleiche Fehler
angezeigt wird, wenn "$ErrorView" den Wert "CategoryView" aufweist.
PS> $ErrorView = "CategoryView" # Wert ndern in
CategoryView
PS> get-childitem nofile.txt
ObjectNotFound: (C:\nofile.txt:String) [Get-ChildItem], ItemNotFoundExce
ption

In diesem Beispiel wird veranschaulicht, dass sich der Wert von
ErrorView nur auf die Fehleranzeige auswirkt und die Struktur des
Fehlerobjekts in der automatischen Variablen "$error" dadurch
nicht gendert wird. Informationen ber die automatische Variable
"$error" finden Sie unter "about_automatic_variables".
Dieser Befehl akzeptiert das ErrorRecord-Objekt, das mit dem
letzten Fehler im Fehlerarray verknpft ist (Element 0), und
formatiert alle Eigenschaften des Fehlerobjekts in einer Liste.

PS> $error [0] | format-list -property * -force
Ausnahme : System.Management.Automation.ItemNotFoundException : Der
Pfad
'C:\nofile.txt' kann nicht gefunden werden, da er nicht
vorhanden ist. at
System.Management.Automation.SessionStateInternal.GetChi
ldItems(String
path, Boolean recurse, CmdletProviderContext context) at

System.Management.Automation.ChildItemCmdletProviderIntr
insics.Get(String path,
Boolean recurse, CmdletProviderContext context) at
Microsoft.PowerShell.Commands.GetChildItemCommand.Proces
sRecord()
TargetObject : C:\nofile.txt
CategoryInfo : ObjectNotFound: (C:\nofile.txt: String) [Get-Chi
ldItem],
ItemNotFoundException
FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetCh
ildItemCommand
ErrorDetails :
InvocationInfo : System.Management.Automation.InvocationInfo
$FormatEnumerationLimit
-----------------------
Bestimmt, wie viele Elemente in einer Anzeige aufgelistet
werden. Diese Variable wirkt sich nicht auf die zugrunde
liegenden Objekte, sondern nur auf die Anzeige aus.
Wenn der Wert von $FormatEnumerationLimit kleiner als die
Anzahl der aufgelisteten Elemente ist, fgt Windows
PowerShell Auslassungspunkte (...) hinzu, um nicht angezeigte
Elemente anzugeben.
Gltige Werte: Ganze Zahlen (Int32)
Standardwert: 4
BEISPIELE
In diesem Beispiel wird gezeigt, wie die Variable
"$FormatEnumerationLimit" verwendet wird, um die Anzeige von
aufgelisteten Elementen zu verbessern.
Mit dem Befehl in diesem Beispiel wird eine Tabelle
generiert, in der alle Dienste, die auf dem Computer
ausgefhrt werden, in zwei Gruppen aufgelistet werden: eine
Gruppe fr Dienste, die gerade ausgefhrt werden, und eine
Gruppe fr Dienste, die beendet wurden. Dabei werden mit
einem Get-Service-Befehl alle Dienste abgerufen, und das
Ergebnis wird ber die Pipeline an das Cmdlet "Group-Object"
bergeben, um die Ergebnisse nach dem Dienststatus zu gruppieren.
Die Ergebnisanzeige enthlt eine Tabelle, in der der Status
in der Spalte "Name" und der Prozess mit diesem Status in der
Spalte "Group" aufgefhrt werden. (Die Spaltenbezeichnungen
knnen mit einer Hashtabelle gendert werden. Weitere
Informationen finden Sie in den Beispielen unter "get-help
format-table -examples".)
Die Spalte "Group" enthlt maximal 4 Dienste fr jeden
Status. Um die Anzahl der aufgefhrten Elemente zu erhhen,
erhhen Sie den Wert von $FormatEnumerationLimit auf 1000.
Die Liste in der Spalte "Group" in der Ergebnisanzeige wird
nun durch die Zeilenlnge beschrnkt. Im abschlieenden
Befehl des Beispiels werden mit dem Wrap-Parameter von
Format-Table alle Prozesse in der jeweiligen Statusgruppe
angezeigt.

PS> $formatenumerationlimit # Aktuellen Wert suchen
4

PS> get-service | group-object -property status
# Alle Dienste nach
Status auflisten
Count Name Group
----- ---- -----
60 Running {AdtAgent, ALG, Ati Hotkeywhler, AudioSrv
...}
41 Stopped {Alerter, AppMgmt, aspnet_state, ATI Sma
rt...}
# Die Liste wird nach 4
Elementen abgeschnitten.
PS> $formatenumerationlimit = 1000
# Grenze auf 1000 erhhen

PS> get-service | group-object -property status
# Befehl wiederholen
Count Name Group
----- ---- -----
60 Running {AdtAgent, ALG, Ati Hotkeywhler, AudioSrv, BITS, CcmExec..
.
41 Stopped {Alerter, AppMgmt, aspnet_state, ATI Smart, Browser, CiSv
c...
PS> get-service | group-object -property status | format-table -wrap
# Wrap-Parameter hinzufgen
Count Name Group
----- ---- -----
60 Running {AdtAgent, ALG, Ati HotKey Poller, AudioSrv,
BITS, CcmExec, Client for NFS, CryptSvc, DcomLaunch, Dhc
p,
dmserver, Dnscache, ERSvc, Eventlog, EventSystem,
FwcAgent, helpsvc, HidServ, IISADMIN, InoRPC, InoRT,
InoTask, lanmanserver, lanmanworkstation, LmHosts, MDM,
Netlogon, Netman, Nla, NtLmSsp, PlugPlay, PolicyAgent,
ProtectedStorage, RasMan, RemoteRegistry, RpcSs, SamSs,
Schedule, seclogon, SENS, SharedAccess, ShellHWDetection
,
SMT PSVC, Spooler, srservice, SSDPSRV, stisvc, TapiSrv
,
TermService, Themes, TrkWks, UMWdf, W32Time, W3SVC,
WebClient, winmgmt, wscsvc, wuauserv, WZCSVC, zzInterix}
41 Stopped {Alerter, AppMgmt, aspnet_state, ATI Smart,
Browser, CiSvc, ClipSrv, clr_optimization_v2.0.50727_32,

COMSysApp, CronService, dmadmin, FastUserSwitchingCompat
ibi
lity, HTTPFilter, ImapiService, Mapsvc, Messenger,
mnmsrvc, MSDTC, MSIServer, msvsmon80, NetDDE, NetDDEdsdm
,
NtmsSvc, NVSvc, ose, RasAuto, RDSessMgr, RemoteAccess,

RpcLocator, RSVP, SCardSvr, SwPrv, SysmonLog, TlntSvr,
upnphost, UPS, VSS, WmdmPmSN, Wmi, WmiApSrv, xmlprov}
$Log*Event
----------
Die Log*Event-Einstellungsvariablen bestimmen, welche Typen
von Ereignissen in das Windows PowerShell-Ereignisprotokoll
in der Ereignisanzeige geschrieben werden. Standardmig
werden nur Modul- und Anbieterereignisse protokolliert. Sie
knnen das Ereignisprotokoll jedoch mit den Log*Event-
Einstellungsvariablen anpassen, um beispielsweise
Befehlsereignisse zu protokollieren.
Die Log*Event-Einstellungsvariablen sind folgende:
$LogCommandHealthEvent: Protokolliert Fehler und
Ausnahmen bei der Initialisierung und Verarbeitung von
Befehlen. Standard = $false (nicht protokolliert).
$LogCommandLifecycleEvent:
Protokolliert das Starten und Beenden von Befehlen
und Befehlspipelines sowie Sicherheitsausnahmen in
der Befehlserkennung. Standard = $false (nicht
protokolliert).
$LogEngineHealthEvent: Protokolliert Fehler von
Sitzungen. Standard = $true (protokolliert).
$LogEngineLifecycleEvent: Protokolliert das ffnen und
Schlieen von Sitzungen. Standard = $true (protokolliert).
$LogProviderHealthEvent: Protokolliert Anbieterfehler wie
Lese- und Schreibfehler, Suchfehler und Aufruffehler.
Standard = $true (protokolliert).
$LogProviderLifecycleEvent: Protokolliert das Hinzufgen
und Entfernen von Windows PowerShell-Anbietern.
Standard = $true (protokolliert). (Weitere
Informationen ber die Windows PowerShell-Anbieter
erhalten Sie mit folgendem Befehl:
"get-help about_provider".
Geben Sie die Variable mit dem Wert "$true" ein, um ein
Log*Event zu aktivieren, beispielsweise:
$LogCommandLifecycleEvent
- oder -
$LogCommandLifeCycleEvent = $true
Geben Sie die Variable mit dem Wert "$false" ein, um einen
Ereignistyp zu deaktivieren, beispielsweise:
$LogCommandLifeCycleEvent = $false
Die Ereignisse, die Sie aktivieren, wirken sich nur auf die
aktuelle Windows PowerShell- Konsole aus. Um die
Konfiguration fr alle Konsolen zu bernehmen, speichern Sie
die Variableneinstellungen im Windows PowerShell-Profil.
$MaximumAliasCount
------------------
Bestimmt, wie viele Aliase in einer Windows PowerShell-
Sitzung zulssig sind. Der Standardwert 4096 ist fr die
meisten Verwendungszwecke ausreichend. Er kann jedoch an die
individuellen Anforderungen angepasst werden.
Gltige Werte: 1024 - 32768 (Int32)
Standard: 4096

Um die Aliase im System zu zhlen, geben Sie Folgendes ein:
(get-alias).count
$MaximumDriveCount
------------------
Bestimmt, wie viele Windows PowerShell-Laufwerke in einer
angegebenen Sitzung zulssig sind. Dazu gehren
Dateisystemlaufwerke und Datenspeicher, die von Windows
PowerShell-Anbietern verfgbar gemacht und als Laufwerke
angezeigt werden, beispielsweise das Laufwerk "Alias:" und
das Laufwerk "HKLM:".
Gltige Werte: 1024 - 32768 (Int32)
Standard: 4096

Um die Aliase im System zu zhlen, geben Sie Folgendes ein:
(get-psdrive).count
$MaximumErrorCount
------------------
Bestimmt, wie viele Fehler im Fehlerverlauf fr die Sitzung
gespeichert werden.
Gltige Werte: 256 - 32768 (Int32)
Standard: 256
Objekte, die die einzelnen gespeicherten Fehler darstellen,
werden in der automatischen Variablen "$Error" gespeichert.
Diese Variable enthlt ein Array von Fehlerdatensatzobjekten
mit einem Objekt pro Fehler. Der aktuellste Fehler stellt das
erste Objekt im Array ($Error [0]) dar.

Um die Fehler im System zu zhlen, verwenden Sie die
Count-Eigenschaft des $Error-Arrays. Geben Sie Folgendes ein:
$Error.count
Mit der Arraynotation knnen Sie bestimmte Fehler anzeigen.
Geben Sie beispielsweise Folgendes ein, um den aktuellsten
Fehler anzuzeigen:
$Error[0]
Um den ltesten gespeicherten Fehler anzuzeigen, geben Sie
Folgendes ein:
$Error[($Error.Count -1]
Um die Eigenschaften des ErrorRecord-Objekts anzuzeigen,
geben Sie Folgendes ein:
$Error[0] | format-list -property * -force
In diesem Befehl berschreibt der Force-Parameter die
spezielle Formatierung von ErrorRecord-Objekten und stellt
das konventionelle Format wieder her.
Um alle Fehler aus dem Fehlerverlauf zu lschen, verwenden
Sie die Clear-Methode des Fehlerarrays.
PS> $Error.count
17
PS> $Error.clear()
PS>
PS> $Error.count
0
Um alle Eigenschaften und Methoden eines Fehlerarrays zu
suchen, verwenden Sie das Get-Member-Cmdlet mit dem
InputObject-Parameter. Wenn Sie eine Auflistung von Objekten
ber die Pipeline an Get-Member bergeben, zeigt Get-Member
die Eigenschaften und Methoden der Objekte in der Auflistung
an. Wenn Sie die InputObject-Parameter von Get-Member
verwenden, zeigt Get-Member die Eigenschaften und Methoden der
Auflistung an.
$MaximumFunctionCount
------------------
Bestimmt, wie viele Funktionen in einer angegebenen Sitzung
zulssig sind.
Gltige Werte: 1024 - 32768 (Int32)
Standard: 4096
Um die Funktionen in der Sitzung anzuzeigen, verwenden Sie
das Windows PowerShell-Laufwerk "Function:", das vom Windows
PowerShell-Funktionsanbieter verfgbar gemacht wird. (Geben
Sie "get-help function" ein, um weitere Informationen ber
den Funktionsanbieter zu erhalten.)
Um die Funktionen in der aktuellen Sitzung aufzulisten, geben
Sie Folgendes ein:
get-childitem function:
Um die Anzahl der Funktionen in der aktuellen Sitzung zu
bestimmen, geben Sie Folgendes ein:
(get-childitem function:).count
$MaximumHistoryCount
------------------
Bestimmt, wie viele Befehle im Befehlsverlauf fr die
aktuelle Sitzung gespeichert werden.
Gltige Werte: 1 - 32768 (Int32)
Standard: 64
Um die Anzahl der Befehle zu bestimmen, die derzeit im
Befehlsverlauf gespeichert sind, geben Sie Folgendes ein:

(get-history).count
Mit dem Cmdlet "Get-History" knnen Sie den Befehl anzeigen,
der im Befehlsverlauf gespeichert wurde. Weitere
Informationen erhalten Sie mit folgendem Befehl: "get-help
about_history".
$MaximumVariableCount
------------------
Bestimmt, wie viele Variablen - einschlielich automatischer
Variablen, Einstellungsvariablen sowie in Befehlen und
Skripts erstellter Variablen - in einer angegebenen Sitzung
zulssig sind.
Gltige Werte: 1024 - 32768 (Int32)
Standard: 4096
Um die Variablen in der Sitzung anzuzeigen, verwenden Sie das
Cmdlet "Get-Variable" sowie die Features des Windows
PowerShell-Laufwerks "Variable:" und des Windows
PowerShell-Variablenanbieters. Informationen ber den
Variablenanbieter erhalten Sie mit folgendem Befehl:
"get-help variable".
Um die aktuelle Anzahl von Variablen im System zu suchen,
geben Sie Folgendes ein:
(get-variable).count
$OFS
----
Ausgabetrennzeichen. Gibt das Zeichen an, das die Elemente
eines Arrays trennt, wenn das Array in eine Zeichenfolge
konvertiert wird.
Gltige Werte: eine beliebige Zeichenfolge.
Standard: Leerzeichen
Standardmig ist die Variable "$OFS" nicht vorhanden, und
das Ausgabetrennzeichen ist ein Leerzeichen. Sie knnen diese
Variable jedoch hinzufgen und auf eine beliebige
Zeichenfolge festlegen.
BEISPIELE
In diesem Beispiel wird gezeigt, wie ein Leerzeichen zur Trennung
der Werte verwendet wird, wenn ein Array in eine Zeichenfolge
konvertiert wird. In diesem Fall wird ein Array von ganzen Zahlen
in einer Variablen gespeichert, und die Variable wird in eine
Zeichenfolge umgewandelt.
PS> $array = 1,2,3 # Array von ganzen Zahlen speichern

PS> [string]$array # Array in eine Zeichenfolge umwandeln
1 2 3 # Elemente durch Leerzeichen trennen
Um das Trennzeichen zu ndern, fgen Sie die Variable "$OFS"
hinzu, indem Sie ihr einen Wert zuweisen. Um ordnungsgem zu
funktionieren, muss die Variable den Namen "$OFS" tragen.
PS> $OFS = "+" # "$OFS" erstellen und "+" zuweisen
PS> [string]$array # Befehl wiederholen
1+2+3 # Elemente durch Pluszeichen trennen
Um das Standardverhalten wiederherzustellen, knnen Sie dem Wert
von "$OFS" ein Leerzeichen (" ") zuweisen oder die Variable
lschen. Mit diesem Befehl wird die Variable gelscht, und es
wird berprft, ob das Trennzeichen ein Leerzeichen ist.

PS> Remove-Variable OFS # "$OFS" lschen
PS>
PS> [string]$array # Befehl wiederholen
1 2 3 # Elemente durch Leerzeichen trennen
$OutputEncoding
---------------
Bestimmt den Typ der Zeichencodierung, die von Windows
PowerShell beim Senden von Text an andere Anwendungen
verwendet wird. Wenn eine Anwendung beispielsweise
Unicode-Zeichenfolgen an Windows PowerShell zurckgibt, muss
der Wert mglicherweise gendert werden, um die Zeichen
ordnungsgem zu senden.
Gltige Werte: Objekte, die von einer Encoding-Klasse
abgeleitet wurden, beispielsweise ASCIIEncoding,
SBCSCodePageEncoding, UTF7Encoding, UTF8Encoding,
UTF32Encoding und UnicodeEncoding.
Standard: ASCIIEncoding-Objekt (System.Text.ASCIIEncoding)
BEISPIELE
In diesem Beispiel wird veranschaulicht, wie der Befehl
FINDSTR in Windows PowerShell auf einem Computer verwendet
wird, der fr eine Sprache mit Unicode-Zeichen wie Chinesisch
lokalisiert wurde.
Mit dem ersten Befehl wird der Wert von "$OutputEncoding"
gesucht. Da der Wert ein Codierungsobjekt darstellt, sollte
nur die EncodingName-Eigenschaft angezeigt werden.

PS> $OutputEncoding.EncodingName # Aktuellen Wert suchen
US-ASCII
In diesem Beispiel werden mit einem FINDSTR-Befehl zwei
chinesischen Zeichen in der Datei "Test.txt" gesucht. Wenn der
FINDSTR-Befehl in der Windows-Eingabeaufforderung (Cmd.exe)
ausgefhrt wird, sucht FINDSTR die Zeichen in der Textdatei.
Wenn Sie den gleichen FINDSTR-Befehl jedoch in Windows
PowerShell ausfhren, werden die Zeichen nicht gefunden, da
sie von Windows PowerShell in ASCII-Text statt in Unicode-Text
an FINDSTR gesendet werden.
PS> findstr <Unicode-Zeichen> # findstr fr die Suche verwenden
PS> # Nichts gefunden

Legen Sie den Wert von "$OutputEncoding" auf den Wert der
OutputEncoding-Eigenschaft der Konsole fest, die auf dem fr
Windows ausgewhlten Gebietsschema basiert, um den Befehl in
Windows PowerShell zu verwenden. Verwenden Sie doppelte
Doppelpunkte (::) im Befehl, da OutputEncoding eine statische
Eigenschaft der Konsole ist.
PS> $OutputEncoding = [console]::outputencoding
PS> # Gleichen Wert festlegen wie
OutputEncoding-Eigenschaft
der Konsole
PS> $OutputEncoding.EncodingName
OEM United States
# Ergebniswert suchen

Nach dieser nderung werden die Zeichen vom Befehl FINDSTR
gefunden.
PS> findstr <Unicode-Zeichen>
test.txt: <Unicode-Zeichen>
# findstr fr die Suche verwenden Sucht di
e
Zeichen in der Textdatei.
$ProgressPreference
-------------------
Bestimmt, wie PowerShell auf Statusaktualisierungen reagiert, die
von einem Skript, Cmdlet oder Anbieter generiert werden,
beispielsweise die Statusleisten, die vom Cmdlet "Write-Progress"
generiert werden. Mit dem Cmdlet "Write-Progress" werden
Statusleisten erstellt, die den Status eines Befehls darstellen.
Gltige Werte:
Stop: Zeigt keine Statusleiste an. Stattdessen
wird eine Fehlermeldung angezeigt,
und die Ausfhrung wird beendet.
Inquire: Zeigt keine Statusleiste an.
Fordert eine Berechtigung an,
um fortzufahren. Wenn Sie mit
J oder A antworten, wird
die Statusleiste angezeigt.
Continue: Zeigt die Statusleiste an und fhrt
(Standard) mit der Ausfhrung fort.
SilentlyContinue: Fhrt den Befehl aus, zeigt jedoch
keine Statusleiste an.
$PSEmailServer
--------------
Gibt den Standard-E-Mail-Server an, der zum Senden von E-Mails
verwendet wird. Diese Einstellungsvariable wird beispielsweise
von Cmdlets wie "Send-MailMessage" verwendet, die E-Mails senden.
$PSSessionApplicationName
---------------------------
Gibt den Standardanwendungsnamen fr einen Remotebefehl mit
WS-Management-Technologie an.
Der Standardanwendungsname des Systems ist WSMAN. Sie knnen
die Standardeinstellung jedoch mit der Einstellungsvariablen
ndern.
Der Anwendungsname ist der letzte Knoten in einem
Verbindungs-URI. So lautet der Anwendungsname im folgenden
Beispiel-URI WSMAN.
http://Server01:8080/WSMAN
Der Standardanwendungsname wird verwendet, wenn der
Remotebefehl keinen Verbindungs-URI oder Anwendungsnamen angibt.
Der WinRM-Dienst whlt mit dem Anwendungsnamen einen Listener
fr die Verbindungsanforderung aus. Der Wert dieses Parameters
sollte mit dem Wert der URLPrefix-Eigenschaft eines Listeners
auf dem Remotecomputer bereinstimmen.
Um den Systemstandard und den Wert dieser Variablen zu
berschreiben und einen anderen Anwendungsnamen fr eine
bestimmte Sitzung auszuwhlen, verwenden Sie den
ConnectionURI-Parameter oder den ApplicationName-Parameter der
Cmdlets "New-PSSession", "Enter-PSSession" oder "Invoke-Command".

Diese Einstellungsvariable wird auf dem lokalen Computer
festgelegt, gibt jedoch einen Listener auf dem Remotecomputer
an. Wenn der angegebene Anwendungsname auf dem Remotecomputer
nicht vorhanden ist, fhrt der Befehl zum Einrichten der
Sitzung zu einem Fehler.
$PSSessionConfigurationName
---------------------------
Gibt die Standardsitzung an, die fr PSSessions verwendet
wird, die in der aktuellen Sitzung erstellt wurden.
Diese Einstellungsvariable wird auf dem lokalen Computer
festgelegt, gibt jedoch eine Sitzungskonfiguration auf dem
Remotecomputer an.
Der Wert der $PSSessionConfigurationName-Variablen ist ein
vollqualifizierter Ressourcen-URI.
Der Standardwert:
http://schemas.microsoft.com/powershell/microsoft.powershell
gibt die Microsoft.PowerShell-Sitzungskonfiguration auf dem
Remotecomputer an.
Wenn Sie nur den Konfigurationsnamen angeben, wird der
folgende Schema-URI vorangestellt:
http://schemas.microsoft.com/powershell/

Sie knnen die Standardeinstellung berschreiben und mit dem
ConfigurationName-Parameter des Cmdlet "New-PSSession",
"Enter-PSSession" oder "Invoke-Command" eine andere
Sitzungskonfiguration fr eine bestimmte Sitzung auswhlen.
Sie knnen den Wert dieser Variablen jederzeit ndern.
Bedenken Sie dabei, dass die ausgewhlte Sitzungskonfiguration
auf dem Remotecomputer vorhanden sein muss. Andernfalls fhrt
der Befehl zum Erstellen einer Sitzung fr die Sitzungskonfigu-
ration zu einem Fehler.
Diese Einstellungsvariable hat keine Auswirkungen auf die lokalen
Sitzungskonfigurationen, die verwendet werden, wenn Remotebenutzer
eine Sitzung erstellen, die eine Verbindung mit diesem Computer
herstellt. Sie knnen mit den Berechtigungen fr die lokalen
Sitzungskonfigurationen jedoch bestimmen, von welchen Benutzern diese
verwendet werden drfen.
$PSSessionOption
----------------
Legt die Standardwerte fr fortgeschrittene Benutzeroptionen
in einer Remotesitzung fest. Durch Konfiguration dieser
Optionen werden die Standardwerte des Systems fr
Sitzungsoptionen berschrieben.
Sie knnen auch benutzerdefinierte Optionen fr eine
bestimmte Remotesitzung festlegen, indem Sie den
SessionOption-Parameter in Cmdlets konfigurieren, mit denen
eine Sitzung erstellt wird, beispielsweise "New-PSSession",
"Enter-PSSession" und "Invoke-Command". Der SessionOption-Para-
meterwert hat Vorrang gegenber den Standardeinstellungen im
System und in der Variablen.
Die Variable "$PSSessionOption" enthlt ein PSSessionOption-Objekt
(System.Management.Automation.Remoting.PSSessionObject).
Jede Eigenschaft des Objekts stellt eine
Sitzungsoption dar. Beispielsweise deaktiviert die
NoCompression-Eigenschaft die Datenkomprimierung whrend der
Sitzung.
Um die Einstellungsvariable "$PSSessionOption" zu erstellen,
verwenden Sie das Cmdlet "New-PSSessionOption". Speichern Sie
die Ausgabe in der Variablen "$PSSessionOption".
Beispiel:
$PSSessionOption = New-PSSessionOption -NoCompression
Um die Einstellungsvariable "$PSSessionOption" in allen
Windows PowerShell-Sitzungen zu verwenden, fgen Sie dem
Windows PowerShell-Profil einen New-PSSessionOption-Befehl
hinzu, mit dem die Variable "$PSSessionOption" erstellt wird.
Weitere Informationen ber das Cmdlet "New-PSSessionOption"
finden Sie im Hilfethema fr New-PSSessionOption. Weitere
Informationen ber Remotebefehle und Sitzungen finden Sie
unter "about_Remote" und unter "about_PSSessions".
Weitere Informationen zur Verwendung von Profilen finden Sie
unter "about_Profiles".
$VerbosePreference
------------------
Bestimmt, wie PowerShell auf ausfhrliche Meldungen reagiert,
die von einem Skript, Cmdlet oder Anbieter generiert wurden,
beispielsweise Meldungen, die vom Cmdlet "Write-Verbose"
generiert werden. In der Regel werden in ausfhrlichen
Meldungen die Aktionen zur Ausfhrung eines Befehls beschrieben.
Standardmig werden ausfhrliche Meldungen nicht angezeigt.
Sie knnen dieses Verhalten jedoch ndern, indem Sie den Wert
von "$VerbosePreference" ndern.
Sie knnen auch den allgemeinen Verbose-Parameter eines
Cmdlet verwenden, um die ausfhrlichen Meldungen fr einen
bestimmten Befehl anzuzeigen oder auszublenden. Weitere
Informationen erhalten Sie mit folgendem Befehl: "get-help
about_commonparameters".
Gltige Werte:
Stop: Zeigt die ausfhrliche Meldung sowie eine
Fehlermeldung an und beendet die Ausfhrung.
Inquire: Zeigt die ausfhrliche Meldung und
anschlieend eine Eingabeaufforderung an, in der S
ie
gefragt werden, ob Sie fortfahren mchten.
Continue: Zeigt die ausfhrliche Meldung
an und setzt die Ausfhrung fort.
SilentlyContinue: Zeigt keine ausfhrliche
(Standard) Meldung an. Setzt die Ausfhrung fort.
BEISPIELE
Diese Beispiele veranschaulichen die Auswirkungen der
verschiedenen Werte von "$VerbosePreference" sowie der Verwendung
des allgemeinen Verbose-Parameters zum berschreiben des
Einstellungswerts.

In diesem Beispiel werden die Auswirkungen des Werts
"SilentlyContinue" (Standard) veranschaulicht.
PS> $VerbosePreference # Aktuellen Wert suchen
SilentlyContinue
PS> Write-Verbose "Ausfhrlicher Meldungstest"
PS> # Ausfhrliche Meldung schreiben
# Meldung wird nicht angezeigt
PS> Write-Verbose "Ausfhrlicher Meldungstest" -verbose
VERBOSE: Ausfhrlicher Meldungstest
# Verbose-Parameter verwenden
In diesem Beispiel werden die Auswirkungen des Werts "Continue"
veranschaulicht.
PS> $VerbosePreference = "Continue"
# Wert in "Continue" ndern
PS> Write-Verbose "Ausfhrlicher Meldungstest"
# Ausfhrliche Meldung
schreiben
VERBOSE: Ausfhrlicher Meldungstest
# Meldung wird angezeigt
PS> Write-Verbose "Ausfhrlicher Meldungstest" -verbose:$false
# Verbose-Parameter mit
dem Wert "$false" verwenden
PS>
# Meldung wird nicht angezeigt
In diesem Beispiel werden die Auswirkungen des Werts "Stop"
veranschaulicht.
PS> $VerbosePreference = "Stop"
# Wert in "Stop" ndern
PS> Write-Verbose "Ausfhrlicher Meldungstest"
# Ausfhrliche Meldung schreiben
VERBOSE: Ausfhrlicher Meldungstest
Write-Verbose: Die Befehlsausfhrung wurde beendet, da die
Shellvariable "VerbosePreference" auf Stop festgelegt ist.
Bei Zeile:1 Zeichen:14
+ Write-Verbose <<<< "Ausfhrlicher Meldungstest"
PS> Write-Verbose "Ausfhrlicher Meldungstest" -verbose:$false
# Verbose-Parameter mit dem
Wert "$false" verwenden
PS>
# Meldung wird nicht angezeigt
In diesem Beispiel werden die Auswirkungen des Werts "Inquire"
veranschaulicht.
PS> $VerbosePreference = "Inquire"
# Wert in "Inquire" ndern
PS> Write-Verbose "Ausfhrlicher Meldungstest"
VERBOSE: Ausfhrlicher Meldungstest
# Ausfhrliche Meldung schreiben
Besttigung
Vorgang fortsetzen?
[J] Ja [A] Ja, alle [B] Befehl anhalten [H] Anhalten [?] Hilfe (der Stand
ardwert ist "J"): a
PS>

PS> Write-Verbose "Ausfhrlicher Meldungstest" -verbose:$false
# Verbose-Parameter verwenden
PS>
# Meldung wird nicht angezeigt

$WarningPreference
------------------
Bestimmt, wie PowerShell auf Warnmeldungen reagiert, die von
einem Skript, Cmdlet oder Anbieter generiert wurden,
beispielsweise Meldungen, die vom Cmdlet "Write-Warning"
generiert werden.
Standardmig werden Warnmeldungen angezeigt, und die
Ausfhrung wird fortgesetzt. Sie knnen dieses Verhalten
jedoch ndern, indem Sie den Wert von "$WarningPreference" ndern.
Sie knnen auch den allgemeinen WarningAction-Parameter eines
Cmdlet verwenden, um zu bestimmen, wie Windows PowerShell auf
Warnungen eines bestimmten Befehls reagiert. Weitere
Informationen erhalten Sie mit folgendem Befehl: "get-help
about_commonparameters".
Gltige Werte:
Stop: Zeigt die Warnmeldung sowie eine
Fehlermeldung an und beendet die Ausfhrung.
Inquire: Zeigt die Warnmeldung an und
fordert dann eine Berechtigung zum Fortfahren an
.
Continue: Zeigt die Warnmeldung an und setzt
(Standard) die Ausfhrung fort.
SilentlyContinue: Zeigt keine Warnmeldung an. Setzt die
Ausfhrung fort.
BEISPIELE
Diese Beispiele veranschaulichen die Auswirkungen der
verschiedenen Werte von "$WarningPreference" sowie der Verwendung
des allgemeinen WarningAction-Parameters zum berschreiben des
Einstellungswerts.

In diesem Beispiel werden die Auswirkungen des Werts "Continue"
(Standard) veranschaulicht.
PS> $WarningPreference # Aktuellen Wert suchen

Continue
# Warnmeldung schreiben
PS> Write-Warning "Dieser Vorgang kann zum Lschen von Daten fhren."
WARNING: Dieser Vorgang kann zum Lschen von Daten fhren.

# WarningAction-Parameter fr "
Write-Warning" verwenden.
"Dieser Vorgang kann zum
Lschen von Daten fhren".
PS> Write-Warning "Dieser Vorgang kann zum Lschen von Daten fhren." -w
arningaction silentlycontinue
In diesem Beispiel werden die Auswirkungen des Werts
"SilentlyContinue" veranschaulicht.
PS> $WarningPreference = "SilentlyContinue"
# Wert in SilentlyContinue ndern

PS> Write-Warning "Dieser Vorgang kann zum Lschen von Daten fhren."
PS> # Warnmeldung schreiben

PS> Write-Warning "Dieser Vorgang kann zum Lschen von
Daten fhren." -warningaction stop
# WarningAction-Parameter zum Beenden
# der Verarbeitung,
wenn der Befehl die
WARNUNG: "Dieser Vorgang kann zum Lschen von Daten fhren" generiert.
Write-Warning: Die Befehlsausfhrung wurde beendet, da
die Shellvariable "WarningPreference" auf Stop festgelegt ist.
Bei Zeile:1 Zeichen:14
+ Write-Warning <<<< "Dieser Vorgang kann zum Lschen von
Daten fhren." -warningaction stop
In diesem Beispiel werden die Auswirkungen des Werts "Inquire"
veranschaulicht.
PS> $WarningPreference = "Inquire"
# Wert in "Inquire" ndern
PS> Write-Warning "Dieser Vorgang kann zum Lschen von Daten fhren."
# Warnmeldung schreiben
WARNING: Dieser Vorgang kann zum Lschen von Daten fhren.
Besttigung
Vorgang fortsetzen?
[J] Ja [A] Ja, alle [B] Befehl anhalten [H] Anhalten [?] Hilfe (der S
tandardwert ist "J"): a
PS>
PS> Write-Warning "Dieser Vorgang kann zum Lschen von Daten fhren." -wa
rningaction silentlycontinue
PS> # WarningAction-Parameter zum ndern der
# Antwort auf eine Warnung fr
den aktuellen Befehl verwenden
In diesem Beispiel werden die Auswirkungen des Werts "Stop" veranschaulicht
.
PS> $WarningPreference = "Stop"
# Wert in "Stop" ndern
PS> Write-Warning "Dieser Vorgang kann zum Lschen von Daten fhren."
# Warnmeldung schreiben
WARNING: Dieser Vorgang kann zum Lschen von Daten fhren.
Write-Warning: Die Befehlsausfhrung wurde beendet, da die
Shellvariable "WarningPreference" auf Stop festgelegt ist.
Bei Zeile:1 Zeichen:14
+ Write-Warning <<<< "Dieser Vorgang kann zum Lschen von
Daten fhren."
PS> Write-Warning "Dieser Vorgang kann zum Lschen von
Daten fhren." -warningaction inquire
WARNING: Dieser Vorgang kann zum Lschen von Daten fhren.
Besttigung
Vorgang fortsetzen?
[J] Ja [A] Ja, alle [B] Befehl anhalten [H] Anhalten [?] Hilfe (Der S
tandardwert ist "J"):
# WarningAction-Parameter zum ndern der #
Antwort auf eine
# Warnung fr den aktuellen Befehl verwend
en
$WhatIfPreference
------------------
Bestimmt, ob WhatIf automatisch fr jeden Befehl aktiviert
wird, der den Parameter untersttzt. Wenn WhatIf aktiviert
wird, meldet das Cmdlet die erwarteten Auswirkungen des
Befehls, fhrt den Befehl jedoch nicht aus.
Gltige Werte:
0: WhatIf wird nicht automatisch
(Standard) aktiviert. Verwenden Sie den
WhatIf-Parameter des Befehls zur
manuellen Aktivierung.

1: WhatIf wird automatisch fr alle Befehle
aktiviert, die den Parameter untersttzen. Der
WhatIf-Befehl kann mit dem Wert "False" verwende
t werden,
um den Befehl manuell zu deaktivieren (WhatIf:$f
alse).
DETAILBESCHREIBUNG
Wenn WhatIf von einem Cmdlet untersttzt wird, meldet das
Cmdlet die erwarteten Auswirkungen des Befehls, statt den
Befehl auszufhren. So meldet Windows PowerShell als Antwort
auf einen Remove-Item-Befehl, welche Elemente gelscht
wrden, anstatt die Datei "test.txt" zu lschen. Durch einen
nachfolgenden Get-Childitem-Befehl wird besttigt, dass die
Datei nicht gelscht wurde.
PS> remove-item test.txt
WhatIf: Der Vorgang "Remove-Item" wird fr das Ziel "Item:
C:\test.txt" ausgefhrt.
PS> get-childitem test.txt
Verzeichnis: Microsoft.PowerShell.Core\FileSystem::C:
Modus LastWriteTime Length Name
---- ------------- ------ ----
-a--- 29.07.2006 19:15 84 test.txt
BEISPIELE
In diesen Beispielen werden die Auswirkungen der verschiedenen
Werte von "$WhatIfPreference" veranschaulicht. Auerdem wird
gezeigt, wie mit dem Cmdlet "WhatIf" der Einstellungswert fr
einen bestimmten Befehl berschrieben wird.

In diesem Beispiel werden die Auswirkungen des Standardwerts 0
(nicht aktiviert) veranschaulicht.
PS> $whatifpreference
0 # Aktuellen Wert berprfen
PS> get-childitem test.txt | format-list FullName
FullName : C:\test.txt
# Vorhandensein der Datei
berprfen
PS> remove-item test.txt
PS> # Datei lschen
PS> get-childitem test.txt | format-list -property FullName
# Lschen der Datei berprfen
Get-ChildItem : Der Pfad 'C:\test.txt' kann nicht
gefunden werden, da er nicht vorhanden ist.
Bei Zeile:1 Zeichen:14
+ get-childitem <<<< test.txt | format-list fullname
In diesem Beispiel werden die Auswirkungen des WhatIf-Parameters
mit dem Wert 0 fr "$WhatIfPreference" veranschaulicht.
PS> get-childitem test2.txt | format-list -property FullName
FullName : C:\test2.txt
# Vorhandensein der Datei berprfen
PS> remove-item test2.txt -whatif
WhatIf: Der Vorgang "Remove File" wird fr das Ziel "C:\test2.txt" au
sgefhrt.
# WhatIf-Parameter verwenden
PS> get-childitem test2.txt | format-list -property FullName
FullName : C:\test2.txt
# Sicherstellen, dass die Datei
nicht gelscht wurde
In diesem Beispiel werden die Auswirkungen des Werts 1 (WhatIf
aktiviert) veranschaulicht. Wenn Sie ein Cmdlet mit Remove-Item
lschen, wird von Remove-Item der Pfad fr die zu lschende Datei
angezeigt, die Datei wird jedoch nicht gelscht.
PS> $whatifpreference = 1
PS> $whatifpreference
1 # Wert ndern

PS> remove-item test.txt
WhatIf: Der Vorgang "Remove File" wird fr das Ziel "C:\test.txt" aus
gefhrt.
# Versuchen, eine Datei zu lschen
PS> get-childitem test.txt | format-list FullName
FullName : C:\test.txt
# Vorhandensein der Datei berprfen
In diesem Beispiel wird gezeigt, wie eine Datei gelscht wird,
wenn der Wert von "$WhatIfPreference" 1 ist. Dabei wird der
WhatIf-Parameter mit dem Wert "$false" verwendet.
PS> remove-item test.txt -whatif:$false
# WhatIf-Parameter mit "$false" verwenden
In diesem Beispiel wird veranschaulicht, dass einige Cmdlets das
Verhalten von WhatIf untersttzen und andere nicht. In diesem
Beispiel weist "$WhatIfPreference" den Wert 1 (aktiviert) auf,
und ein Get-Process-Befehl, der WhatIf nicht untersttzt, wird
ausgefhrt; das Verhalten von WhatIf wird jedoch von einem
Stop-Process-Befehl ausgefhrt.
Sie knnen das WhatIf-Verhalten des Stop-Process-Befehls mit dem
WhatIf-Parameter und dem Wert "$false" berschreiben.
PS> $whatifpreference = 1
# Wert in 1 ndern

PS> get-process winword
# Ein Get-Process-Befehl wird
abgeschlossen.
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessNam
e
------- ------ ----- ----- ----- ------ -- ----------
-
234 8 6324 15060 154 0.36 2312 WINWORD
PS> stop-process -name winword
WhatIf: Der Vorgang "Stop-Process" wird fr das Ziel "WINWORD (2312)" a
usgefhrt.
# Stop-Process-Befehl verwendet WhatIf
PS> stop-process -name winword -whatif:$false
PS> # WhatIf:$false berschreibt die
Einstellung

PS> get-process winword
Get-Process: Der Prozess "winword" kann nicht gefunden
werden. berprfen Sie den Prozessnamen, und rufen Sie das
Cmdlet erneut auf.
Bei Zeile:1 Zeichen:12
+ get-process <<<< winword
# Beenden des Prozesses berprfen
SIEHE AUCH
about_Automatic_Variables
about_CommonParameters
about_Environment_Variables
about_Profiles
about_Remote
about_Scopes
about_Variables

Вам также может понравиться