Gennemse grundlæggende syntaks for at optælle objekter i pipelinen
Kommandoen ForEach-Object udfører optælling. Den har to almindelige aliasser: ForHver og %. På samme måde som Where-Objecthar ForEach-Object- en grundlæggende syntaks og en avanceret syntaks.
I den grundlæggende syntaks kan du køre en enkelt metode eller få adgang til en enkelt egenskab for de objekter, der blev pipet ind i kommandoen. Her er et eksempel:
Get-ChildItem –Path C:\Encrypted\ -File | ForEach-Object -MemberName Encrypt
Med denne syntaks medtager du ikke parenteserne efter medlemsnavnet, hvis medlemmet er en metode. Da denne grundlæggende syntaks er beregnet til at være kort, vil du ofte bemærke den uden -MemberName parameternavn, og du vil måske bemærke det med et alias i stedet for det fulde kommandonavn. Begge følgende kommandoer udfører f.eks. den samme handling:
Get-ChildItem –Path C:\Encrypted\ -File | ForEach Encrypt
Get-ChildItem –Path C:\Encrypted\ -File | % Encrypt
Seddel
Du støder muligvis ikke på mange scenarier, der kræver optælling. Hvert nyt operativsystem og hver version af PowerShell introducerer nye PowerShell-kommandoer. Nyere operativsystemer introducerer typisk nye kommandoer, der udfører handlinger, der tidligere krævede optælling.
Begrænsninger i den grundlæggende syntaks
Den grundlæggende syntaks kan kun få adgang til en enkelt egenskab eller metode. Den kan ikke udføre logiske sammenligninger, der bruger -and eller -eller; det kan ikke træffe beslutninger; og den kan ikke køre andre kommandoer eller kode. Følgende kommando kører f.eks. ikke, og den resulterer i en fejl:
Get-Service | ForEach -MemberName Stop -and -MemberName Close