Powershell noob

Pagina: 1
Acties:

Vraag


  • FastFred
  • Registratie: Maart 2009
  • Laatst online: 10:06
Ik ben in de lunchpauze bezig met 'Learn Windows Powershell in a month of lunches'. Ik doe iedere dag in de pauze 1 hoofdstuk, ieder hoofdstuk duurt ongeveer een uurtje, ideaal :)

Ik zit nu in hoofdstuk 3 en heb een vraag, op pagina 28, paragraaf 3.5.2 wordt gesproken over optional en mandatory parameters. Alles wat tussen [ en ] staat is optioneel zegt men.

Als voorbeeld wordt help Get-eventlog genomen. Je krijgt dan de cmdlet Get-Eventlog te zien met alle mogelijke parameters. Dit is wat je dan krijgt
SYNTAX
Get-EventLog [-Logname] <System.String> [[-InstanceId] <System.Int64[]>] [-After etc. etc. etc.
Ik qoute het volgende even uit het boek
What if you try to run a command and forget one of the mandatory parameters? Take a look at the help for Get-EventLog, for example, and you'll see that the -Logname parameter is mandatory; the parameter isn't enclosed in square brackets.
Nu ben ik echt niet slechtziend ofzo, maar -Logname zit toch echt tussen square brackets in de help, dus is optioneel. Maar als ik Get-EventLog uitvoer, wordt er toch gevraagd om LogName, dus is wel verplicht.

Hoe herken ik nu een verplichte en optionele parameter in de help? Of klopt het boek niet of is er na uitgave van dit boek iets veranderd?

Beste antwoord (via FastFred op 20-08-2020 20:16)


  • nelizmastr
  • Registratie: Maart 2010
  • Laatst online: 08:27

nelizmastr

Goed wies kapot

OverhaasteFred :+

I reject your reality and substitute my own

Alle reacties


  • chaoscontrol
  • Registratie: Juli 2005
  • Laatst online: 09:32
Het staat er toch goed? Vergelijk het maar met de parameter ernaast. Zoek de verschillen:

SYNTAX
Get-EventLog
[-LogName] <String>
[[-InstanceId] <Int64[]>]
[-After <DateTime>]

[ Voor 6% gewijzigd door chaoscontrol op 20-08-2020 13:15 ]

Inventaris - Koop mijn meuk!


  • FastFred
  • Registratie: Maart 2009
  • Laatst online: 10:06
@chaoscontrol Ja dat verschil had ik ontdekt, een optionele parameter begint dus met 2x een [ . Maar dat staat niet in het boek :P Daar staat gewoon dat iets optioneel is als het tussen [ en ] staat.

  • TweakerNummer
  • Registratie: September 2001
  • Niet online
[-LogName] is optioneel.

De parameter aangeduid met <System.String> is niet optioneel.

Get-Eventlog NonExistingLog is dan ook hetzelf als Get-Eventlog -Logname NonExistingLog.

[ Voor 52% gewijzigd door TweakerNummer op 20-08-2020 13:18 ]


  • chaoscontrol
  • Registratie: Juli 2005
  • Laatst online: 09:32
@FastFred Die 2e is inderdaad een beetje verwarrend, daarom snel de 3e er ook bij ge-edit. :Y) Het gaat er om dat de parameter EN de value in een bracket staan in de help.

[ Voor 28% gewijzigd door chaoscontrol op 20-08-2020 13:17 ]

Inventaris - Koop mijn meuk!


  • FastFred
  • Registratie: Maart 2009
  • Laatst online: 10:06
Ok, dus ff zodat ik zeker weet dat ik het snap

Op deze manier is LogName verplicht
Get-EventLog [-Logname] <System.String>

Maar stel nou dat het er zo zou staan, dan is het optioneel
Get-EventLog [-Logname <System.String>]

En zo ook bij
Get-EventLog [-ComputerName <System.String[ ]>]

EDIT: Lol, in het volgende paragraaf op dezelfde pagina wordt het uitgelegd :P
You'll find the first way in the syntax summary: the parameter name-only the name-will be surrounded by square brackets. For example look at the first two parameters in the second parameter set of Get-EventLog.:

[-LogName] <string> [[InstanceId] <Int64[ ] >]

The first parameter, -LogName, isn't optional. You can tell because the entire paramter-it's name and it's value-aren't surrounded by square brackets. But the parameter name is enclosed in square brackets....

[ Voor 50% gewijzigd door FastFred op 20-08-2020 15:11 ]


Acties:
  • +2 Henk 'm!

  • nelizmastr
  • Registratie: Maart 2010
  • Laatst online: 08:27

nelizmastr

Goed wies kapot

FastFred schreef op donderdag 20 augustus 2020 @ 14:59:


EDIT: Lol, in het volgende paragraaf op dezelfde pagina wordt het uitgelegd :P


[...]
Eerst je lunch afronden, daarna pas vragen stellen dus :+

I reject your reality and substitute my own


Acties:
  • +2 Henk 'm!

  • chaoscontrol
  • Registratie: Juli 2005
  • Laatst online: 09:32
nelizmastr schreef op donderdag 20 augustus 2020 @ 15:35:
[...]


Eerst je lunch afronden, daarna pas vragen stellen dus :+
Hij heet niet voor niets @FastFred :+

Inventaris - Koop mijn meuk!


Acties:
  • Beste antwoord
  • +1 Henk 'm!

  • nelizmastr
  • Registratie: Maart 2010
  • Laatst online: 08:27

nelizmastr

Goed wies kapot

OverhaasteFred :+

I reject your reality and substitute my own

Pagina: 1