Set-CimInstance
CIM sınıfının ModifyInstance yöntemini çağırarak CIM sunucusundaki CIM örneğini değiştirir.
Sözdizimi
Set-CimInstance
[-ComputerName <String[]>]
[-ResourceUri <Uri>]
[-OperationTimeoutSec <UInt32>]
[-InputObject] <CimInstance>
[-Property <IDictionary>]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-CimInstance
-CimSession <CimSession[]>
[-ResourceUri <Uri>]
[-OperationTimeoutSec <UInt32>]
[-InputObject] <CimInstance>
[-Property <IDictionary>]
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-CimInstance
-CimSession <CimSession[]>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-Query] <String>
[-QueryDialect <String>]
-Property <IDictionary>
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Set-CimInstance
[-ComputerName <String[]>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-Query] <String>
[-QueryDialect <String>]
-Property <IDictionary>
[-PassThru]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Bu cmdlet yalnızca Windows platformunda kullanılabilir.
Bu cmdlet, CIM sunucusundaki bir CIM örneğini değiştirir.
InputObject parametresi belirtilmezse, cmdlet aşağıdaki yollardan biriyle çalışır:
- ComputerName parametresi veya CimSession parametresi belirtilmezse, bu cmdlet bir Bileşen Nesne Modeli (COM) oturumu kullanarak yerel Windows Yönetim Araçları'nda (WMI) çalışır.
- ComputerName parametresi veya CimSession parametresi belirtilirse, bu cmdlet ComputerName parametresi veya CimSession parametresi tarafından belirtilen CIM sunucusunda çalışır.
InputObject parametresi belirtilirse, cmdlet aşağıdaki yollardan biriyle çalışır:
- ComputerName parametresi veya CimSession parametresi belirtilmezse, bu cmdlet giriş nesnesinden CIM oturumunu veya bilgisayar adını kullanır.
- ComputerName parametresi veya CimSession parametresi belirtilirse, bu cmdlet CimSession parametre değerini veya ComputerName parametre değerini kullanır. Bu çok yaygın bir durum değildir.
Örnekler
Örnek 1: CIM örneğini ayarlama
Bu örnek, Query parametresini kullanarak VariableValue özelliğinin değerini abcd olarak ayarlar. Windows Yönetim Araçları Sorgu Dili (WQL) sorgusuyla eşleşen örnekleri değiştirebilirsiniz.
$instance = @ {
Query = 'Select * from Win32_Environment where name LIKE "testvar%"'
Property = @{VariableValue="abcd"}
}
Set-CimInstance @instance
Örnek 2: İşlem hattını kullanarak CIM örneği özelliğini ayarlama
Bu örnek, cmdlet'ini kullanarak QueryGet-CimInstance
filtrelenen CIM örneği nesnesini alır. cmdlet, Set-CimInstance
VariableValue özelliğinin değerini abcd olarak değiştirir.
Get-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' |
Set-CimInstance -Property @{VariableValue="abcd"}
Örnek 3: Giriş nesnesini kullanarak CIM örneği özelliğini ayarlama
$x = Get-CimInstance -Query 'Select * from Win32_Environment where Name="testvar"'
Set-CimInstance -InputObject $x -Property @{VariableValue="somevalue"} -PassThru
Bu örnek, kullanarak $x
içindeki Query parametresi tarafından filtrelenen CIM örneği nesnelerini bir değişkene Get-CimInstance
alır ve ardından değişkenin içeriğini cmdlet'ine Set-CimInstance
geçirir.
Set-CimInstance
ardından VariableValue özelliğini somevalue olarak değiştirir. PassThru parametresi kullanıldığından, bu örnek değiştirilmiş bir CIM örneği nesnesi döndürür.
Örnek 4: CIM örneği özelliğini ayarlama
Bu örnek, Query parametresinde belirtilen CIM örneği nesnesini cmdlet'ini kullanarak $x
bir değişkene Get-CimInstance
alır ve nesnenin VariableValue özellik değerini değiştirerek değiştirir. CIM örneği nesnesi daha sonra cmdlet'i Set-CimInstance
kullanılarak kaydedilir.
PassThru parametresi kullanıldığından, bu örnek değiştirilmiş bir CIM örneği nesnesi döndürür.
$x = Get-CimInstance -Query 'Select * from Win32_Environment where name="testvar"'
$x.VariableValue = "Change"
Set-CimInstance -CimInstance $x -PassThru
Örnek 5: WhatIf kullanarak değiştirebileceğiniz CIM örneklerinin listesini gösterme
Bu örnek, değişikliğin yapılmaması gerektiğini belirtmek için WhatIf ortak parametresini kullanır, ancak yalnızca yapılırsa ne olacağını gösterir.
$instance = @{
Query = 'Select * from Win32_Environment where name LIKE "testvar%"'
Property = @{VariableValue="abcd"}
WhatIf = $true
}
Set-CimInstance @instance
Örnek 6: Kullanıcıdan onay aldıktan sonra CIM örneğini ayarlama
Bu örnekte, değişikliğin yalnızca kullanıcıdan onay aldıktan sonra yapılması gerektiğini belirtmek için Confirm ortak parametresi kullanılır.
$instance = @{
Query = 'Select * from Win32_Environment where name LIKE "testvar%"'
Property = @{VariableValue="abcd"}
Confirm = $true
}
Set-CimInstance @instance
Örnek 7: Oluşturulan CIM örneğini ayarlama
Bu örnek, cmdlet'ini kullanarak New-CimInstance
belirtilen özelliklere sahip bir CIM örneği oluşturur ve içindeki içeriğini bir değişkenine $x
alır. Değişkeni daha sonra cmdlet'ine Set-CimInstance
geçirilir ve bu da VariableValue özelliğinin değerini somevalue olarak değiştirir.
PassThru parametresi kullanıldığından, bu örnek değiştirilmiş bir CIM örneği nesnesi döndürür.
$instance = @{
ClassName = 'Win32_Environment'
Property = @{
Name="testvar"
UserName="domain\user"
}
Key = 'Name', 'UserName'
ClientOnly = $true
}
$x = New-CimInstance @instance
Set-CimInstance -CimInstance $x -Property @{VariableValue="somevalue"} -PassThru
Parametreler
-CimSession
Cmdlet'leri uzak bir bilgisayarda çalıştırır. Bir veya cmdlet'in çıktısı New-CimSession
gibi bir bilgisayar adı veya Get-CimSession
oturum nesnesi girin.
Tür: | CimSession[] |
Position: | Named |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-ComputerName
CIM işlemini çalıştırmak istediğiniz bilgisayarın adını belirtir. Tam etki alanı adı (FQDN) veya NetBIOS adı belirtebilirsiniz.
Bu parametreyi belirtmezseniz, cmdlet işlemi Bileşen Nesne Modeli (COM) kullanarak yerel bilgisayarda gerçekleştirir.
Bu parametreyi belirtirseniz, cmdlet WsMan protokolunu kullanarak belirtilen bilgisayarda geçici bir oturum oluşturur.
Aynı bilgisayarda birden çok işlem gerçekleştiriliyorsa, CIM oturumu kullanarak bağlanmak daha iyi performans sağlar.
Tür: | String[] |
Diğer adlar: | CN, ServerName |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Confirm
Cmdlet'i çalıştırmadan önce sizden onay ister.
Tür: | SwitchParameter |
Diğer adlar: | cf |
Position: | Named |
Default value: | False |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-InputObject
Giriş olarak kullanılacak bir CIM örneği nesnesi belirtir.
InputObject parametresi koleksiyonlar üzerinde numaralandırılmıyor. Bir koleksiyon geçirilirse bir hata oluşur. Koleksiyonlarla çalışırken, değerleri numaralandırmak için girişi kanala yazın.
Tür: | CimInstance |
Diğer adlar: | CimInstance |
Position: | 0 |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-Namespace
CIM işlemi için ad alanını belirtir. Varsayılan ad alanı kök/CIMV2 . PowerShell, ad alanlarının listesini sağlamak üzere yerel WMI sunucusundan bir ad alanı listesi aldığından, ad alanları listesine göz atmak için sekme tamamlama özelliğini kullanabilirsiniz.
Tür: | String |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-OperationTimeoutSec
Cmdlet'in bilgisayardan yanıt bekleme süresini belirtir. Varsayılan olarak, bu parametrenin değeri 0'dır; bu da cmdlet'in sunucu için varsayılan zaman aşımı değerini kullandığı anlamına gelir.
OperationTimeoutSec parametresi 3 dakikalık sağlam bağlantı yeniden deneme zaman aşımından daha küçük bir değere ayarlanırsa, istemci yeniden bağlanamadan önce sunucudaki işlem zaman aşımına uğraması nedeniyle OperationTimeoutSec parametresinin değerinden daha uzun süren ağ hataları kurtarılamaz.
Tür: | UInt32 |
Diğer adlar: | OT |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-PassThru
Üzerinde çalıştığınız öğeyi temsil eden bir nesne döndürür. Varsayılan olarak, bu cmdlet herhangi bir çıkış oluşturmaz.
Tür: | SwitchParameter |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Property
CIM örneğinin özelliklerini karma tablo olarak belirtir (ad-değer çiftlerini kullanarak). Yalnızca bu parametre kullanılarak belirtilen özellikler değiştirilir. CIM örneğinin diğer özellikleri değiştirilmez.
Tür: | IDictionary |
Diğer adlar: | Arguments |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-Query
Cmdlet'in çalıştırıldığı CIM örneklerini almak için CIM sunucusunda çalıştırılacak sorguyu belirtir. QueryDialect parametresini kullanarak sorgu diyalektini belirtebilirsiniz.
Belirtilen değer çift tırnak ("
), tek tırnak işareti ()'
veya ters eğik çizgi ()\
içeriyorsa, bu karakterlerin önüne ters eğik çizgi (\
) karakteri ekleyerek bu karakterlerden kaçmalısınız. Belirtilen değer WQL LIKE işlecini kullanıyorsa, bunları köşeli ayraç (): yüzde (), alt çizgi ([]
%
_
) içine alarak veya köşeli ayraç ([
) açarak aşağıdaki karakterlerden kaçmalısınız.
Tür: | String |
Position: | 0 |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-QueryDialect
Sorgu parametresi için kullanılan sorgu dilini belirtir. Bu parametre için kabul edilebilir değerler şunlardır: WQL veya CQL. Varsayılan değer WQL'dir.
Tür: | String |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-ResourceUri
Kaynak sınıfının veya örneğin kaynak tekdüzen kaynak tanımlayıcısını (URI) belirtir. URI, bir bilgisayardaki diskler veya işlemler gibi belirli bir kaynak türünü tanımlamak için kullanılır.
URI bir ön ek ve kaynağın yolundan oluşur. Örneğin:
http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/Win32_LogicalDisk
http://intel.com/wbem/wscim/1/amt-schema/1/AMT_GeneralSettings
Varsayılan olarak, bu parametreyi belirtmezseniz, DMTF standart kaynak URI'sini http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/
kullanılır ve sınıf adı eklenir.
ResourceUri yalnızca WSMan protokolü kullanılarak oluşturulan CIM oturumlarıyla veya WSMan kullanarak bir CIM oturumu oluşturan ComputerName parametresi belirtilirken kullanılabilir. ComputerName parametresini belirtmeden bu parametreyi belirtirseniz veya DCOM protokolü kullanılarak oluşturulan bir CIM oturumu belirtirseniz, DCOM protokolü ResourceUri parametresini desteklemediğinden bir hata alırsınız.
Hem ResourceUri parametresi hem de Filter parametresi belirtilirse, Filter parametresi yoksayılır.
Tür: | Uri |
Position: | Named |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-WhatIf
Cmdlet çalıştırılıyorsa ne olacağını gösterir. Cmdlet çalıştırılmaz.
Tür: | SwitchParameter |
Diğer adlar: | wi |
Position: | Named |
Default value: | False |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
Girişler
Çıkışlar
None
Varsayılan olarak, bu cmdlet çıkış döndürmez.
PassThru parametresini kullandığınızda, bu cmdlet değiştirilmiş CIM örneği nesnesini döndürür.
Notlar
PowerShell için aşağıdaki diğer adları Set-CimInstance
içerir:
- Windows:
scim
Bu cmdlet yalnızca Windows platformlarında kullanılabilir.
İlişkili Bağlantılar
PowerShell