Aracılığıyla paylaş


Set-CimInstance

CIM sınıfının ModifyInstance yöntemini çağırarak CIM sunucusundaki CIM örneğini değiştirir.

Syntax

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.

Set-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' -Property @{VariableValue="abcd"}

Örnek 2: İşlem hattını kullanarak CIM örneği özelliğini ayarlama

Bu örnek, cmdlet'ini kullanarak Get-CimInstance Query parametresi tarafından 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 Get-CimInstanceiçindeki Query parametresi tarafından filtrelenen CIM örneği nesnelerini bir değişkene $x alır ve ardından değişkenin içeriğini cmdlet'ine Set-CimInstance geçirir. Set-CimInstanceardı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 Get-CimInstance bir değişkene $x 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.

Set-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' -Property @{VariableValue="abcd"} -WhatIf

Ö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.

Set-CimInstance -Query 'Select * from Win32_Environment where name LIKE "testvar%"' -Property @{VariableValue="abcd"} -Confirm

Ö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 $xalı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.

$x = New-CimInstance -ClassName Win32_Environment -Property @{Name="testvar";UserName="domain\user"} -Key Name,UserName -ClientOnly
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.

Type:CimSession[]
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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.

Type:String[]
Aliases:CN, ServerName
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Cmdlet'i çalıştırmadan önce sizden onay ister.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:CimInstance
Aliases:CimInstance
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Namespace

CIM işlemi için ad alanını belirtir. Varsayılan ad alanı root/cimv2'dir. 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.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

Type:UInt32
Aliases:OT
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters: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.

Type:IDictionary
Aliases:Arguments
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters: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.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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 cim oturumu oluşturan ComputerName parametresini belirtirken 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.

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Cmdlet çalıştırılıyorsa ne olacağını gösterir. Cmdlet çalıştırılmaz.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Girişler

CimInstance

Çıkışlar

None

Varsayılan olarak, bu cmdlet çıkış döndürmez.

CimInstance

Passthru parametresini kullandığınızda, bu cmdlet değiştirilen CIM örneği nesnesini döndürür.

Notlar

PowerShell için aşağıdaki diğer adları Set-CimInstanceiçerir:

  • Windows:
    • scim

Bu cmdlet yalnızca Windows platformlarında kullanılabilir.