Write-Error
Objektumot ír a hibastreambe.
Syntax
NoException (Alapértelmezett)
Write-Error
[-Message] <string>
[-Category <ErrorCategory>]
[-ErrorId <string>]
[-TargetObject <Object>]
[-RecommendedAction <string>]
[-CategoryActivity <string>]
[-CategoryReason <string>]
[-CategoryTargetName <string>]
[-CategoryTargetType <string>]
[<CommonParameters>]
WithException
Write-Error
[-Exception] <Exception>
[-Message <string>]
[-Category <ErrorCategory>]
[-ErrorId <string>]
[-TargetObject <Object>]
[-RecommendedAction <string>]
[-CategoryActivity <string>]
[-CategoryReason <string>]
[-CategoryTargetName <string>]
[-CategoryTargetType <string>]
[<CommonParameters>]
ErrorRecord
Write-Error
[-ErrorRecord] <ErrorRecord>
[-RecommendedAction <string>]
[-CategoryActivity <string>]
[-CategoryReason <string>]
[-CategoryTargetName <string>]
[-CategoryTargetType <string>]
[<CommonParameters>]
Description
A Write-Error parancsmag nem végződő hibát deklarál. Alapértelmezés szerint a hibastreamben a rendszer hibaüzeneteket küld a megjelenítendő gazdaprogramnak a kimenettel együtt.
Ha nem végződő hibát szeretne írni, írjon be egy hibaüzenet-sztringet, egy ErrorRecord objektumot vagy egy Exception objektumot. A hibarekord feltöltéséhez használja a Write-Error egyéb paramétereit.
A nem végződő hibák hibát írnak a hibastreambe, de nem állnak le a parancsfeldolgozással. Ha a bemeneti elemek gyűjteményének egyik elemén nem végződő hiba van deklarálva, a parancs folytatja a gyűjtemény többi elemének feldolgozását.
Ha megszüntetési hibát szeretne deklarálni, használja a throw kulcsszót.
További információért lásd: about_Throw.
Példák
1. példa: Hiba írása a RegistryKey-objektumhoz
Get-ChildItem | ForEach-Object {
if ($_.GetType().ToString() -eq "Microsoft.Win32.RegistryKey")
{
Write-Error "Invalid object" -ErrorId B1 -TargetObject $_
}
else
{
$_
}
}
Ez a parancs nem végződő hibát deklarál, ha a Get-ChildItem parancsmag egy Microsoft.Win32.RegistryKey objektumot ad vissza, például a PowerShell-beállításjegyzék-szolgáltató HKLM: vagy HKCU: meghajtóin lévő objektumokat.
2. példa: Hibaüzenet írása a konzolra
Write-Error "Access denied."
Ez a parancs deklarál egy nem végződő hibát, és "Hozzáférés megtagadva" hibaüzenetet ír. A parancs a Message paramétert használja az üzenet megadásához, de nem adja meg az opcionális Üzenet paraméternevet.
3. példa: Írjon hibát a parancssorba, és adja meg a kategóriát
Write-Error -Message "Error: Too many input values." -Category InvalidArgument
Ez a parancs deklarál egy nem végződő hibát, és egy hibakategóriát határoz meg.
4. példa: Hiba írása kivételobjektum használatával
$E = [System.Exception]@{Source="Get-ParameterNames.ps1";HelpLink="https://go.microsoft.com/fwlink/?LinkID=113425"}
Write-Error -Exception $E -Message "Files not found. The $Files location doesn't contain any XML files."
Ez a parancs egy Exception objektummal deklarál egy nem végződő hibát.
Az első parancs kivonattáblával hozza létre a System.Exception objektumot. Menti a kivételobjektumot a $E változóba. Kivonattáblával bármilyen olyan objektumot létrehozhat, amely null konstruktort tartalmaz.
A második parancs a Write-Error parancsmaggal deklarál egy nem végződő hibát. A Exception paraméter értéke a Exception objektum a $E változóban.
Paraméterek
-Category
A hiba kategóriáját adja meg. Az alapértelmezett érték Nincs megadva. A paraméter elfogadható értékei a következők:
- Nincs meghatározva
- OpenError
- CloseError
- Eszközhiba
- DeadlockDetected
- ÉrvénytelenArgumentum
- ÉrvénytelenAdat
- Érvénytelen művelet
- Érvénytelen eredmény
- ÉrvénytelenTípus
- MetadataError
- Nincs megvalósítva
- Nincs telepítve
- Objektum nem található
- Művelet leállítva
- OperationTimeout
- SyntaxError
- ParserError
- Hozzáférés megtagadva
- ResourceBusy
- ResourceExists
- Erőforrás nem elérhető
- OlvasásiHiba
- Írási hiba
- FromStdErr
- SecurityError
- ProtocolError
- ConnectionError
- AuthenticationError
- Kvótalimit túllépve
- Kvóta túllépve
- Nincs engedélyezve
A hibakategóriákról további információt ErrorCategory Enumerationcímű témakörben talál.
Paramétertulajdonságok
| Típus: | ErrorCategory |
| Alapértelmezett érték: | NotSpecified |
| Elfogadott értékek: | NotSpecified, OpenError, CloseError, DeviceError, DeadlockDetected, InvalidArgument, InvalidData, InvalidOperation, InvalidResult, InvalidType, MetadataError, NotImplemented, NotInstalled, ObjectNotFound, OperationStopped, OperationTimeout, SyntaxError, ParserError, PermissionDenied, ResourceBusy, ResourceExists, ResourceUnavailable, ReadError, WriteError, FromStdErr, SecurityError, ProtocolError, ConnectionError, AuthenticationError, LimitsExceeded, QuotaExceeded, NotEnabled |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
NoException
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
WithException
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-CategoryActivity
Megadja a hibát okozó műveletet.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | Tevékenység |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-CategoryReason
Megadja, hogy a tevékenység hogyan vagy miért okozta a hibát.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | Indok |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-CategoryTargetName
Megadja annak az objektumnak a nevét, amelyet a hiba bekövetkeztekor feldolgoztak.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | CélNév |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-CategoryTargetType
Megadja annak az objektumnak a típusát, amelyet a hiba bekövetkeztekor feldolgoztak.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | Céltípus |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-ErrorId
Egy azonosító sztringet ad meg a hiba azonosításához. A karakterláncnak egyedinek kell lennie a hibához.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
NoException
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
WithException
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-ErrorRecord
A hibát jelző hibarekord-objektumot adja meg. A hiba leírásához használja az objektum tulajdonságait.
Hibarekord-objektum létrehozásához használja a New-Object parancsmagot, vagy kérje le a hibarekord objektumot a $Error automatikus változó tömbjéből.
Paramétertulajdonságok
| Típus: | ErrorRecord |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
ErrorRecord
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Exception
A hibát jelképező kivételobjektumot adja meg. A hiba leírásához használja az objektum tulajdonságait.
Kivételobjektum létrehozásához használjon kivonattáblát, vagy használja a New-Object parancsmagot.
Paramétertulajdonságok
| Típus: | Exception |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
WithException
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Message
A hiba üzenetszövegét adja meg. Ha a szöveg szóközöket vagy speciális karaktereket tartalmaz, akkor idézőjelek közé kell foglalnia. Üzenetszöveget is átirányíthat Write-Error-ra.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | Msg |
Paraméterkészletek
NoException
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
WithException
| Position: | 0 |
| Kötelező: | False |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-RecommendedAction
Megadja a felhasználó által a hiba elhárításához vagy megelőzéséhez szükséges műveletet.
Paramétertulajdonságok
| Típus: | String |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-TargetObject
A hiba bekövetkezésekor feldolgozott objektumot adja meg. Adja meg az objektumot, az objektumot tartalmazó változót vagy az objektumot lekérő parancsot.
Paramétertulajdonságok
| Típus: | Object |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
NoException
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
WithException
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CommonParameters
Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.
Bevitelek
String
A parancsmagra egy hibaüzenetet tartalmazó sztringet csövezhet.
Kimenetek
None
Ez a parancsmag nem ad vissza kimenetet. Csak a hibaüzenet-adatfolyamba ír.
Jegyzetek
Write-Error nem módosítja az $? automatikus változó értékét, ezért nem jelez megszüntető hibafeltételt. A megszüntetési hiba jelzéséhez használja a $PSCmdlet.WriteError() metódust.