Resumé
I dette modul har du lært, hvordan Windows PowerShell-kommandolinjegrænsefladen overfører objekter fra én kommando til en anden i pipelinen. Følgende er de vigtigste takeaways:
- Når du forbinder to kommandoer i pipelinen, tager pipelineparameterbinding outputtet fra den første kommando og beslutter, hvad der skal gøres med den. Processen vælger en af parametrene for den anden kommando for at modtage dette output. Windows PowerShell har to teknikker, som den bruger til at træffe denne beslutning. Den første teknik, som Er den, som Windows PowerShell altid forsøger at bruge først, kaldes ByValue. Den anden teknik kaldes ByPropertyName, og den bruges kun, når ByValue mislykkes.
- Hvis du læser hele Hjælp til en kommando, kan du se pipelineinputegenskaben for hver parameter og en liste over teknikker, som parameteren understøtter.
- Når data overføres ved hjælp af ByValue, kan en parameter acceptere komplette objekter fra pipelinen, når disse objekter er af den type, som parameteren accepterer. En enkelt kommando kan have mere end én parameter, der accepterer Pipelineinput ByValue, men hver parameter skal acceptere en anden type objekt.
- Hvis Windows PowerShell ikke kan binde pipelineinput ved hjælp af teknikken ByValue, forsøger den at bruge teknikken ByPropertyName. Når Windows PowerShell bruger teknikken ByPropertyName, forsøger den at matche en egenskab for det objekt, der er overført til en parameter for den kommando, som objektet blev sendt til.
- Ligesom ByValue parametre kan du se de parametre, der accepterer pipelineinput, ved hjælp af teknikken ByPropertyName og undersøge den fulde Hjælp til kommandoen.
- Hver gang du manuelt skriver en parameter for en kommando, tilsidesætter du alle pipelineinput, som parameteren muligvis har accepteret. Du tvinger ikke Windows PowerShell til at vælge en anden parameter til pipelineparameterbinding.
- En anden mulighed for at overføre resultaterne af en kommando til parametrene for en anden er ved hjælp af parenteskommandoer, som er kommandoer, der er omsluttet af parenteser. Parenteserne fortæller Windows PowerShell, at den omsluttede kommando skal udføres først. Den parentesiske kommando kører, og resultaterne af kommandoen indsættes i stedet for.
- Parameteren – ExpandProperty accepterer ét og kun ét egenskabsnavn. Når du bruger denne parameter, oprettes kun indholdet af den angivne egenskab af Select-Object. Nogle personer refererer til denne funktion som udtrækning af egenskabsindholdet. Den officielle beskrivelse af funktionen udvider indholdet af egenskaben.