Megosztás a következőn keresztül:


Select-Object

Objektumok vagy objektumtulajdonságok kijelölése.

Syntax

DefaultParameter (Alapértelmezett)

Select-Object
    [[-Property] <Object[]>]
    [-InputObject <PSObject>]
    [-ExcludeProperty <String[]>]
    [-ExpandProperty <String>]
    [-Unique]
    [-CaseInsensitive]
    [-Last <Int32>]
    [-First <Int32>]
    [-Skip <Int32>]
    [-Wait]
    [<CommonParameters>]

SkipLastParameter

Select-Object
    [[-Property] <Object[]>]
    [-InputObject <PSObject>]
    [-ExcludeProperty <String[]>]
    [-ExpandProperty <String>]
    [-Unique]
    [-CaseInsensitive]
    [-Skip <Int32>]
    [-SkipLast <Int32>]
    [<CommonParameters>]

IndexParameter

Select-Object
    [-InputObject <PSObject>]
    [-Unique]
    [-CaseInsensitive]
    [-Wait]
    [-Index <Int32[]>]
    [<CommonParameters>]

SkipIndexParameter

Select-Object
    [-InputObject <PSObject>]
    [-Unique]
    [-CaseInsensitive]
    [-SkipIndex <Int32[]>]
    [<CommonParameters>]

Description

A Select-Object parancsmag kijelöli egy objektum vagy objektumkészlet megadott tulajdonságait. Egyedi objektumokat, meghatározott számú objektumot vagy objektumot is kijelölhet egy tömb megadott pozíciójában.

Ha objektumokat szeretne kijelölni egy gyűjteményből, használja az Első, Utolsó, Egyedi, Kihagyásés Index paramétereket. Az objektumtulajdonságok kiválasztásához használja a Tulajdonság paramétert. A tulajdonságok kiválasztásakor Select-Object olyan új objektumokat ad vissza, amelyek csak a megadott tulajdonságokkal rendelkeznek.

A Windows PowerShell 3.0-tól kezdve Select-Object tartalmaz egy optimalizálási funkciót, amely megakadályozza, hogy a parancsok ne hozzanak létre és dolgozzanak fel nem használt objektumokat.

Ha Select-Object használ a Első vagy Index paraméterekkel egy parancsfolyamatban, a PowerShell leállítja az objektumokat létrehozó parancsot, amint eléri a kiválasztott számú objektumot. Az optimalizálási viselkedés kikapcsolásához használja a Várakozás paramétert.

Példák

1. példa: Objektumok kijelölése tulajdonság szerint

Ez a példa olyan objektumokat hoz létre, amelyek a folyamatobjektumok Név, Azonosítóés munkakészlet (WS) tulajdonságaival rendelkeznek.

Get-Process | Select-Object -Property ProcessName, Id, WS

2. példa: Objektumok kijelölése tulajdonság szerint és az eredmények formázása

Ez a példa a számítógépen futó folyamatok által használt modulokkal kapcsolatos információkat kap. Get-Process parancsmagot használ a folyamat számítógépen való lekéréséhez.

A Select-Object parancsmaggal [System.Diagnostics.ProcessModule] példányok tömbje jelenik meg az egyes példányok System.Diagnostics.Processáltal Get-Process tulajdonságában található módon.

A parancsmag Select-Object paramétere kiválasztja a folyamatneveket. Ez hozzáad egy ProcessNameNoteProperty minden [System.Diagnostics.ProcessModule] példányhoz, és feltölti az aktuális folyamat ProcessName tulajdonságának értékével.

Végül Format-List parancsmag az egyes folyamatok nevét és moduljait jeleníti meg egy listában.

Get-Process Explorer |
    Select-Object -Property ProcessName -ExpandProperty Modules |
    Format-List
ProcessName       : explorer
ModuleName        : explorer.exe
FileName          : C:\WINDOWS\explorer.exe
BaseAddress       : 140697278152704
ModuleMemorySize  : 3919872
EntryPointAddress : 140697278841168
FileVersionInfo   : File:             C:\WINDOWS\explorer.exe
                    InternalName:     explorer
                    OriginalFilename: EXPLORER.EXE.MUI
                    FileVersion:      10.0.17134.1 (WinBuild.160101.0800)
                    FileDescription:  Windows Explorer
                    Product:          Microsoft Windows Operating System
                    ProductVersion:   10.0.17134.1
...

3. példa: A legtöbb memóriát használó folyamatok kiválasztása

Ez a példa azt az öt folyamatot kapja meg, amelyek a legtöbb memóriát használják. A Get-Process parancsmag lekéri a folyamatokat a számítógépen. A Sort-Object parancsmag a memóriának (munkakészletnek) megfelelően rendezi a folyamatokat, és a Select-Object parancsmag csak az eredményül kapott objektumtömb utolsó öt tagját választja ki.

A Wait paraméter nem szükséges az Sort-Object parancsmagot tartalmazó parancsokban, mert Sort-Object feldolgozza az összes objektumot, majd visszaad egy gyűjteményt. A Select-Object optimalizálása csak olyan parancsokhoz érhető el, amelyek a feldolgozásuk során egyenként adnak vissza objektumokat.

Get-Process | Sort-Object -Property WS | Select-Object -Last 5
Handles  NPM(K)    PM(K)      WS(K) VS(M)   CPU(s)     Id ProcessName
-------  ------    -----      ----- -----   ------     -- -----------
2866     320       33432      45764   203   222.41   1292 svchost
577      17        23676      50516   265    50.58   4388 WINWORD
826      11        75448      76712   188    19.77   3780 Ps
1367     14        73152      88736   216    61.69    676 Ps
1612     44        66080      92780   380   900.59   6132 INFOPATH

4. példa: Egyedi karakterek kijelölése tömbből

Ez a példa a Select-Object paraméterét használja, hogy egyedi karaktereket szerezzen be egy karaktertömbből.

"a","b","c","a","A","a" | Select-Object -Unique
a
b
c
A

5. példa: "-Unique" használata más paraméterekkel

Az Egyedi paraméter más Select-Object paraméterek alkalmazása után szűri az értékeket. Ha például a Első paramétert használja a tömb első számú elemének kiválasztásához, Az egyedi csak a kijelölt értékekre lesz alkalmazva, a teljes tömbre nem.

"a","a","b","c" | Select-Object -First 2 -Unique
a

Ebben a példában Első a tömb első 2 elemeként "a","a" választja ki. Egyedi"a","a" alkalmazva, és egyedi értékként a ad vissza.

6. példa: Egyedi sztringek kiválasztása a -CaseInsensitive paraméterrel

Ez a példa kis- és nagybetűket nem érzékelyítő összehasonlításokat használ a sztringek tömbjének egyedi sztringjeinek lekéréséhez.

"aa", "Aa", "Bb", "bb" | Select-Object -Unique -CaseInsensitive
aa
Bb

7. példa: Az eseménynapló legújabb és legrégebbi eseményeinek kiválasztása

Ez a példa lekéri az első (legújabb) és az utolsó (legrégebbi) eseményt a Windows PowerShell eseménynaplójában.

Get-WinEvent lekéri a Windows PowerShell-napló összes eseményét, és menti őket a $a változóba. Ezután a $a a Select-Object parancsmagra lesz állítva. A Select-Object parancs az Index paraméter használatával választja ki az eseményeket a $a változó eseménytömbéből. Az első esemény indexe 0. Az utolsó esemény indexe az elemek száma $a mínusz 1.

$a = Get-WinEvent -LogName "Windows PowerShell"
$a | Select-Object -Index 0, ($a.Count - 1)

8. példa: Az első objektum ki nem választása

Ez a példa új PSSession-t hoz létre a Servers.txt fájlokban felsorolt összes számítógépen, kivéve az elsőt.

Select-Object a számítógépnevek listájában az első számítógép ki nem választja az összeset. Az eredményként kapott számítógépek listája a parancsmag New-PSSession paraméterének értékeként van beállítva.

New-PSSession -ComputerName (Get-Content Servers.txt | Select-Object -Skip 1)

9. példa: Fájlok átnevezése és több kijelölése a véleményezéshez

Ez a példa hozzáad egy "-ro" utótagot az írásvédett attribútummal rendelkező szövegfájlok alapnevéhez, majd megjeleníti az első öt fájlt, hogy a felhasználó láthassa az effektus mintáját.

Get-ChildItem a ReadOnly dinamikus paramétert használja az írásvédett fájlok lekéréséhez. Az eredményként kapott fájlok a Rename-Item parancsmagra kerülnek, amely átnevezi a fájlt. A Rename-Item paraméterével küldi el az átnevezett fájlokat a Select-Object parancsmagba, amely az első 5-öt választja ki a megjelenítéshez.

A Select-Object paramétere megakadályozza, hogy a PowerShell leállítsa a Get-ChildItem parancsmagot az első öt írásvédett szövegfájl leolvasása után. E paraméter nélkül csak az első öt írásvédett fájl lesz átnevezve.

Get-ChildItem *.txt -ReadOnly |
    Rename-Item -NewName {$_.BaseName + "-ro.txt"} -PassThru |
    Select-Object -First 5 -Wait

10. példa: A -ExpandProperty paraméter bonyolultságainak megjelenítése

Ez a példa a ExpandProperty paraméter bonyolultságát mutatja be.

Vegye figyelembe, hogy a létrehozott kimenet [System.Int32] példányok tömbje volt. A példányok megfelelnek a Kimeneti nézetszabványos formázási szabályainak. Ez minden kibontott tulajdonságra igaz. Ha a kimeneti objektumok egy adott szabványos formátummal rendelkeznek, előfordulhat, hogy a kibontott tulajdonság nem látható.

# Create a custom object to use for the Select-Object example.
$object = [pscustomobject]@{Name="CustomObject";List=@(1,2,3,4,5)}
# Use the ExpandProperty parameter to Expand the property.
$object | Select-Object -ExpandProperty List -Property Name
1
2
3
4
5
# The output did not contain the Name property, but it was added successfully.
# Use Get-Member to confirm the Name property was added and populated.
$object | Select-Object -ExpandProperty List -Property Name | Get-Member -MemberType Properties
   TypeName: System.Int32

Name        MemberType   Definition
----        ----------   ----------
Name        NoteProperty string Name=CustomObject

11. példa: Egyéni tulajdonságok létrehozása objektumokon

Az alábbi példa bemutatja, hogy Select-Object használatával adhat hozzá egyéni tulajdonságot bármely objektumhoz. Ha olyan tulajdonságnevet ad meg, amely nem létezik, Select-Object ezt a tulajdonságot NoteProperty hozza létre minden átadott objektumon.

$customObject = 1 | Select-Object -Property MyCustomProperty
$customObject.MyCustomProperty = "New Custom Property"
$customObject
MyCustomProperty
----------------
New Custom Property

12. példa: Számított tulajdonságok létrehozása az egyes InputObjectekhez

Ez a példa bemutatja, hogy a Select-Object használatával számított tulajdonságokat adhat hozzá a bemenethez. Ha átad egy ScriptBlock a Tulajdonság paraméternek, Select-Object kiértékeli az egyes átadott objektumok kifejezését, és hozzáadja az eredményeket a kimenethez. A ScriptBlockbelül a $_ változóval hivatkozhat a folyamat aktuális objektumára.

Alapértelmezés szerint a Select-Object a ScriptBlock sztringet használja a tulajdonság neveként. A Kivonatolóhasználatával a ScriptBlock kimenetét minden objektumhoz hozzáadott egyéni tulajdonságként címkézheti. A Select-Objectátadott objektumokhoz több számított tulajdonságot is hozzáadhat.

# Create a calculated property called $_.StartTime.DayOfWeek
Get-Process | Select-Object -Property ProcessName,{$_.StartTime.DayOfWeek}
ProcessName  $_.StartTime.DayOfWeek
----         ----------------------
alg                       Wednesday
ati2evxx                  Wednesday
ati2evxx                   Thursday
...
# Add a custom property to calculate the size in KiloBytes of each FileInfo
# object you pass in. Use the pipeline variable to divide each file's length by
# 1 KiloBytes
$size = @{Label="Size(KB)";Expression={$_.Length/1KB}}
# Create an additional calculated property with the number of Days since the
# file was last accessed. You can also shorten the key names to be 'l', and 'e',
# or use Name instead of Label.
$days = @{l="Days";e={((Get-Date) - $_.LastAccessTime).Days}}
# You can also shorten the name of your label key to 'l' and your expression key
# to 'e'.
Get-ChildItem $PSHOME -File | Select-Object Name, $size, $days
Name                        Size(KB)        Days
----                        --------        ----
Certificate.format.ps1xml   12.5244140625   223
Diagnostics.Format.ps1xml   4.955078125     223
DotNetTypes.format.ps1xml   134.9833984375  223

13. példa: Kivonatolókulcsok kiválasztása számított tulajdonságok használata nélkül

A PowerShell 6-tól kezdve a Select-Object támogatja a kivonatoló kulcsainak kiválasztását, bemenetet tulajdonságokként. Az alábbi példa egy bemeneti kivonatoló weight és name kulcsait választja ki, és megjeleníti a kimenetet.

@{ name = 'a' ; weight = 7 } | Select-Object -Property name, weight
name weight
---- ------
a         7

14. példa: Az ExpandProperty módosítja az eredeti objektumot

Ez a példa a ExpandProperty paraméter használatának mellékhatását mutatja be. Ha ExpandPropertyhasznál, Select-Object hozzáadja a kijelölt tulajdonságokat az eredeti objektumhoz NoteProperty tagokként.

PS> $object = [pscustomobject]@{
        name = 'USA'
        children = [pscustomobject]@{
            name = 'Southwest'
        }
    }
PS> $object

name children
---- --------
USA  @{name=Southwest}

# Use the ExpandProperty parameter to expand the children property
PS> $object | Select-Object @{n="country"; e={$_.name}} -ExpandProperty children

name      country
----      -------
Southwest USA

# The original object has been altered
PS> $object

name children
---- --------
USA  @{name=Southwest; country=USA}

Amint látható, a country tulajdonság a gyermek objektumhoz lett hozzáadva a ExpandProperty paraméter használata után.

15. példa: Új objektum létrehozása kibontott tulajdonságokkal a bemeneti objektum módosítása nélkül

A ExpandProperty paraméter használatának mellékhatását elkerülheti egy új objektum létrehozásával és a bemeneti objektum tulajdonságainak másolásával.

PS> $object = [pscustomobject]@{
    name = 'USA'
    children = [pscustomobject]@{
        name = 'Southwest'
    }
}
PS> $object

name children
---- --------
USA  @{name=Southwest}

# Create a new object with selected properties
PS> $newObject = [pscustomobject]@{
    country = $object.name
    children = $object.children
}

PS> $newObject

country children
------- --------
USA     @{name=Southwest}

# $object remains unchanged
PS> $object

name children
---- --------
USA  @{name=Southwest}

16. példa: Helyettesítő karakterek használata a -ExpandProperty paraméterrel

Ez a példa azt mutatja be, hogy helyettesítő karaktereket használ az ExpandProperty paraméterrel. A helyettesítő karakternek egyetlen tulajdonságnévre kell feloldania. Ha a helyettesítő karakter több tulajdonságnévre is feloldható, Select-Object hibát ad vissza.

# Create a custom object.
$object = [pscustomobject]@{
    Label   = "MyObject"
    Names   = @("John","Jane","Joe")
    Numbers = @(1,2,3,4,5)
}
# Try to expand multiple properties using a wildcard.
$object | Select-Object -ExpandProperty N*
Select-Object: Multiple properties cannot be expanded.

# Use a wildcard that resolves to a single property.
$object | Select-Object -ExpandProperty Na*
John
Jane
Joe

Paraméterek

-CaseInsensitive

Alapértelmezés szerint az Egyedi paraméter használatakor a parancsmag megkülönbözteti a kis- és nagybetűket. Ha ezt a paramétert használja, a parancsmag kis- és nagybetűk érzéketlen összehasonlítását használja.

Ez a paraméter a PowerShell 7.4-ben lett hozzáadva.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:False
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

-ExcludeProperty

Megadja azokat a tulajdonságokat, amelyeket ez a parancsmag kizár a műveletből. Helyettesítő karakterek használata engedélyezett.

A PowerShell 6-tól kezdve már nem szükséges a ExcludePropertyTulajdonság paraméterének belefoglalása.

Paramétertulajdonságok

Típus:

String[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:True
DontShow:False

Paraméterkészletek

DefaultParameter
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
SkipLastParameter
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

-ExpandProperty

Megadja a kijelölendő tulajdonságot, és azt jelzi, hogy meg kell kísérelni a tulajdonság kibontására. Ha a bemeneti objektum folyamatának nincs elnevezve a tulajdonság, Select-Object hibát ad vissza. Ez a paraméter támogatja a helyettesítő karaktereket. A helyettesítő karakternek azonban egyetlen tulajdonságnévre kell feloldania. Ha a helyettesítő karakter több tulajdonságnévre is feloldható, Select-Object hibát ad vissza.

Az ExpandPropertySelect-Object használatakor megkísérli kibontani a megadott tulajdonságot minden

  • Ha a megadott tulajdonság egy tömb, a kimenet a tömb minden értékét tartalmazza.
  • Ha a megadott tulajdonság egy objektum, az objektumtulajdonságok minden InputObject

A kimeneti objektumok Típus mindkét esetben megegyezik a kibontott tulajdonság Típus. A ExpandPropertyhasználatakor mellékhatás lép fel. A Select-Object hozzáadja a kijelölt tulajdonságokat az eredeti objektumhoz NoteProperty tagokként.

Ha a Tulajdonság paraméter meg van adva, Select-Object minden kijelölt tulajdonságot NoteProperty próbál hozzáadni minden kimeneti objektumhoz.

Figyelmeztetés

Ha hibaüzenetet kap arról, hogy egy tulajdonság nem dolgozható fel, mert már létezik ilyen nevű tulajdonság, vegye figyelembe az alábbiakat. Vegye figyelembe, hogy ExpandPropertyhasználatakor a Select-Object nem tudja lecserélni a meglévő tulajdonságot. Ez a következőt jelenti:

  • Ha a kibontott objektumnak azonos nevű tulajdonsága van, a parancs hibát ad vissza.
  • Ha a Kijelölt objektumnak ugyanaz a tulajdonsága, mint egy Kibontott objektum tulajdonságának, a parancs hibát ad vissza.

Paramétertulajdonságok

Típus:String
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:True
DontShow:False

Paraméterkészletek

DefaultParameter
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
SkipLastParameter
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

-First

Megadja a bemeneti objektumok tömbjének elejétől kiválasztandó objektumok számát.

Paramétertulajdonságok

Típus:Int32
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

DefaultParameter
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

-Index

Objektumokat jelöl ki egy tömbből az indexértékük alapján. Írja be az indexeket egy vesszővel tagolt listában. A tömb indexei 0-val kezdődnek, ahol a 0 az első értéket, az (n-1) pedig az utolsó értéket jelöli.

Paramétertulajdonságok

Típus:

Int32[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

IndexParameter
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

-InputObject

A parancsmagnak a folyamaton keresztül küldendő objektumokat adja meg. Ez a paraméter lehetővé teszi objektumok Select-Object.

Amikor objektumokat ad át az InputObject paraméternek a folyamat használata helyett, Select-Object a InputObject egyetlen objektumként kezeli, még akkor is, ha az érték gyűjtemény. A gyűjtemények Select-Objectvaló átadásakor ajánlott a folyamatot használni.

Paramétertulajdonságok

Típus:PSObject
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:True
Folyamatból származó érték tulajdonságnév alapján:False
Fennmaradó argumentumokból származó érték:False

-Last

Megadja a bemeneti objektumok tömbjének végéből kiválasztandó objektumok számát.

Paramétertulajdonságok

Típus:Int32
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

DefaultParameter
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

-Property

Megadja a kijelölendő tulajdonságokat. Ezek a tulajdonságok NoteProperty tagokként lesznek hozzáadva a kimeneti objektumokhoz. Helyettesítő karakterek használata engedélyezett. Ha a bemeneti objektumnak nincs elnevezve a tulajdonság, az új NoteProperty értéke $null.

A tulajdonság paraméter értéke új számított tulajdonság lehet. Számított tulajdonság létrehozásához használjon kivonattáblát.

Az érvényes kulcsok a következők:

  • Név (vagy címke) – <string>
  • Kifejezés – <string> vagy <script block>

További információkért lásd a about_Calculated_Propertiesrészt.

Paramétertulajdonságok

Típus:

Object[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:True
DontShow:False

Paraméterkészletek

DefaultParameter
Position:0
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
SkipLastParameter
Position:0
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

-Skip

Kihagyja (nem választja ki) a megadott számú elemet. Alapértelmezés szerint a Kihagyja a paraméterszámot az objektumgyűjtemény elejétől. Ha a parancs a Last paramétert használja, a gyűjtemény végétől számít.

A Index paramétertől eltérően, amely 0-nál kezdődik, a Skip paraméter 1-nél kezdődik.

A PowerShell 7.4-től kezdődően a Skip paraméterrel a SkipLast paraméterrel kihagyhatja a gyűjtemény elejéről és végéről származó elemeket.

Paramétertulajdonságok

Típus:Int32
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

DefaultParameter
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

-SkipIndex

Kihagyja (nem választja ki) az objektumokat egy tömbből az indexértékek alapján. Írja be az indexeket egy vesszővel tagolt listában. A tömb indexei 0-val kezdődnek, ahol a 0 az első értéket, az (n-1) pedig az utolsó értéket jelöli.

Ezt a paramétert a Windows PowerShell 6.0-ban vezettük be.

Paramétertulajdonságok

Típus:

Int32[]

Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

SkipIndexParameter
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

-SkipLast

Kihagyja (nem választja ki) a megadott számú elemet a lista vagy tömb végéről. Ugyanúgy működik, mint a Skip és Last paraméter használata.

A Index paramétertől eltérően, amely 0-nál kezdődik, a SkipLast paraméter 1-nél kezdődik.

A PowerShell 7.4-től kezdődően a Skip paraméterrel a SkipLast paraméterrel kihagyhatja a gyűjtemény elejéről és végéről származó elemeket.

Paramétertulajdonságok

Típus:Int32
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

SkipLastParameter
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

-Unique

Azt adja meg, hogy ha a bemeneti objektumok egy részhalmaza azonos tulajdonságokkal és értékekkel rendelkezik, akkor csak az alhalmaz egy tagját kell kijelölni.

Egyedi más szűrési paraméterek alkalmazása után értékeket választ ki.

Ez a paraméter megkülönbözteti a kis- és nagybetűk értékét. Ennek eredményeképpen a csak karakterházként eltérő sztringek egyedinek minősülnek. Adja hozzá a CaseInsensitive paramétert a kis- és nagybetűk érzéketlen összehasonlításához.

Paramétertulajdonságok

Típus:SwitchParameter
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

-Wait

Azt jelzi, hogy a parancsmag kikapcsolja az optimalizálást. A PowerShell a parancsfolyamatban megjelenő sorrendben futtatja a parancsokat, és lehetővé teszi az összes objektum generálásához. Alapértelmezés szerint, ha Select-Object parancsot ad hozzá az Első vagy Index paraméterekkel egy parancsfolyamatban, a PowerShell leállítja az objektumokat létrehozó parancsot, amint a kiválasztott számú objektum létrejön.

Ezt a paramétert a Windows PowerShell 3.0-ban vezettük be.

Paramétertulajdonságok

Típus:SwitchParameter
Alapértelmezett érték:None
Támogatja a helyettesítő karaktereket:False
DontShow:False

Paraméterkészletek

DefaultParameter
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
IndexParameter
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

PSObject

Ehhez a parancsmaghoz csövezhet objektumokat.

Kimenetek

PSObject

Ez a parancsmag csak a kijelölt tulajdonságokkal rendelkező bemeneti objektumokat adja vissza.

Jegyzetek

A PowerShell a következő aliasokat tartalmazza Select-Object:

  • Minden platform:
    • select

A Select-Object optimalizálási funkciója csak azokhoz a parancsokhoz érhető el, amelyek feldolgozásuk során objektumokat írnak a folyamatba. Nincs hatással a feldolgozott objektumokat pufferelő és gyűjteményként megírt parancsokra. Az objektumok azonnali írása ajánlott eljárás a parancsmagok tervezésében. További információ: Önálló rekordok írása a folyamaterősen ajánlott fejlesztési irányelvek.