PowerShell'deki Nesneden Özelliği Kaldırma [2 Yol]
PSObject.Properties.Remove() Yöntemini Kullanma
PowerShell'deki bir nesneden bir özelliği silmek için,
- Bir nesne oluşturmak için
New-Objectcmdlet'ini kullanın. - Özelliğin adını
stringparametresi olarak sağlayarak bir nesneden belirli bir özelliği kaldırmak içinPSObject.Properties.Remove()yöntemini kullanın.
PSObject.Properties.Remove() Yöntemini kullanın:
$person_obj = New-Object -Typename PSCustomObject -Property @{
Name = 'Bob'
Age = '25'
Citizenship = 'U.S'
}
Write-Host "Before Removal: $person_obj"
$person_obj.PSObject.Properties.Remove('Age')
Write-Host "After Removal: $person_obj"çıktı:
Before Removal: @{Citizenship=U.S; Name=Bob; Age=25}
After Removal: @{Citizenship=U.S; Name=Bob}Yukarıdaki kodda, Ad, Yaş ve Vatandaşlık özelliklerine sahip $person_obj adlı bir nesne oluşturduk. . Daha sonra Age özelliğini kaldırmak için Remove() yöntemini kullandık. $person_obj'ın yalnızca iki özelliğe sahip olduğunu görebilirsiniz: Vatandaşlık ve Ad. Bu komutta, Age özelliğini $person_obj nesnesinden kaldırmak için PSObject.Properties.Remove() yöntemini kullandık.
Not:
PSObject.Properties.Remove()yöntemi ayrıca özelliğin adını birstringparametresi olarak alır, dolayısıyla özelliğin adını iletmeniz gerekir. Kaldırmak istediğiniz mülk.
-ExcludeProperty Parametresini Kullanma
Belirtilen özelliği PowerShell'deki bir nesneden silmek için,
- Bir nesne oluşturmak için
New-Objectcmdlet'ini kullanın - Belirtilen özelliği nesneden kaldırmak için
Select-Objectcmdlet'ini-ExcludePropertyparametresiyle birlikte kullanın.
-ExcludeProperty Parametresini kullanın:
$car_obj = New-Object -Typename PSCustomObject -Property @{
Name = 'BMW'
Color = 'White'
Type = 'Manual'
}
Write-Host "Before Removal: $car_obj"
$car_obj = $car_obj | Select-Object * -ExcludeProperty Type
Write-Host "After Removal: $car_obj"çıktı:
Before Removal: @{Color=White; Name=BMW; Type=Manual}
After Removal: @{Color=White; Name=BMW}Yukarıdaki kodda, New-Object cmdlet'i, Renk, Ad olmak üzere üç özelliğe sahip car_obj adlı bir PSCustomObject oluşturmak için kullanıldı. > ve Tür. Burada -Property parametresi, araba nesnesinin özelliklerini anahtar-değer çifti formatında ayarlamak için kullanıldı.
Bu örnekte, car_obj nesnesinin belirtilen özelliğini seçmek için Select-Object cmdlet'i kullanıldı. Burada Type özelliğini $car_obj'dan kaldırmak için -ExcludeProperty parametresi kullanıldı.
PowerShell'de -ExcludeProperty parametresi, özelliğin adını string parametresi olarak alır, dolayısıyla kaldırmak istediğiniz özelliğin adını iletmeniz gerekir.
Not: Bu kod snippet'inde
*,tümünütemsil etmektedir. Bu, kaldırmak istediğimizTypeözelliği hariç,car_objnesnesinin tüm özelliklerini seçmek için yukarıdaki komutun kullanıldığı anlamına gelir.
Kaldırmak istediğiniz tüm özelliklerin adlarını -ExcludeProperty parametresinin değeri olarak belirterek birden çok özelliği de kaldırabilirsiniz. Aşağıda örnekte gösterildiği gibi:
-ExcludeProperty Parametresini kullanın:
$car_obj = New-Object -Typename PSCustomObject -Property @{
Name = 'BMW'
Color = 'White'
Type = 'Manual'
}
$car_obj | Select-Object * -ExcludeProperty Name, Color
çıktı:
Type
----
ManualBu örnekte, Ad ve Renk özellikleri -ExcludeProperty parametresi kullanılarak $car_obj nesnesinden kaldırıldı.
Bir nesneden birden fazla özelliği kaldırmak için -ExcludeProperty parametresini kullanmanın başka bir örneğini görelim. Bir veya daha fazla özellik adını argüman olarak alır ve bunları nesneden kaldırır.
-ExcludeProperty Parametresini kullanın:
$my_obj = New-Object -Typename PSCustomObject -Property @{
'property1' = 'value1'
'property2' = 'value2'
'property3' = 'value3'
}
$my_obj | Select-Object * -ExcludeProperty property1, property3çıktı:
property2
----------
value2Bu örnekte, property1, property2 ve property3 özelliklerini içeren bir $my_obj nesnesi oluşturduk. Daha sonra property1 ve property3'u kaldırmak için -ExcludeProperty parametresi kullanıldı. Ve nesne artık yalnızca value2 değerine sahip property2 ile kaldı.
Not:
-ExcludePropertyileSelect-Object, bir özelliği nesneler koleksiyonundan kaldırmak için uygundur. Tek bir nesneden bir özelliği silmek içinPSObject.Properties.Remove()yöntemi daha etkili olabilir.
Hepsi PowerShell'deki Object'ten özelliğin nasıl kaldırılacağıyla ilgili.
