Futtatási opciók

A PowerShell szkriptjeinket gyakran szeretnénk nem mi magunk futtatni, hanem a háttérben a gép által indítani, akár logon szkript, akár ütemezett feladat formájában. Ilyenkor nem a szkriptünket hívjuk meg közvetlenül, hanem a powershell.exe programot, és ennek paraméterként adjuk át a szkriptünket.

Ilyenkor persze általában nem látjuk, ha egy nem annyira jól megírt szkriptünk hibára fut, de még kellemetlen helyzetbe kerülhetünk, ha a szkriptünk egy hiányzó kötelező paraméter megadására vagy egy ottfelejtett adatbekérésre vár. Ennél már a hibára futás is jobb, hiszen legalább nem ragad be a powershell.exe folyamat.

Ennek biztosítására találták ki a –noninteractive kapcsolót a powershell.exe futtatásához. Ilyenkor minden olyan esetben, amikor a felhasználónak kellene beavatkozni egy hibajelzést kapunk és megszakad a futtatás. Nézzünk erre néhány példát:

[1] PS C:\> powershell.exe -noninteractive

Windows PowerShell

Copyright (C) 2009 Microsoft Corporation. All rights reserved.

 

[1] PS C:\> Read-Host "kakukk"

Read-Host : Windows PowerShell is in NonInteractive mode. Read and Prompt func

tionality is not available.

At line:1 char:10

+ Read-Host <<<<  "kakukk"

    + CategoryInfo          : InvalidOperation: (:) [Read-Host], PSInvalidOpe

   rationException

    + FullyQualifiedErrorId : InvalidOperation,Microsoft.PowerShell.Commands.

   ReadHostCommand

[2] PS C:\> Get-EventLog

Get-EventLog : Cannot process command because of one or more missing mandatory

 parameters: LogName.

At line:1 char:13

+ Get-EventLog <<<<

    + CategoryInfo          : InvalidArgument: (:) [Get-EventLog], ParameterB

   indingException

    + FullyQualifiedErrorId : MissingMandatoryParameter,Microsoft.PowerShell.

   Commands.GetEventLogCommand

 

[3] PS C:\> exit

[2] PS C:\> Get-EventLog

 

cmdlet Get-EventLog at command pipeline position 1

Supply values for the following parameters:

LogName:

Ha a hibafolyamot kiirányítjuk egy fájlba, akkor ráadásul még ezeket a hibákat meg is tudjuk nézni utólag, így javíthatjuk a szkriptünket.



Word To HTML Converter