Set-Variable (Microsoft.PowerShell.Utility)


Set-Variable

Modül:
Microsoft.PowerShell.Utility

Bir değişkenin değerini ayarlar. İstenilen ada sahip bir değişken mevcut değilse değişkeni oluşturur.

Sözdizimi

Set-Variable
   [-Name] <String[]>
   [[-Value] <Object>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Description <String>]
   [-Option <ScopedItemOptions>]
   [-Force]
   [-Visibility <SessionStateEntryVisibility>]
   [-PassThru]
   [-Scope <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Tanım

Set-Variable cmdlet'i belirtilen değişkene bir değer atar veya geçerli değeri değiştirir. Değişken mevcut değilse cmdlet onu oluşturur.

Örnekler

Örnek 1: Bir değişken ayarlayın ve değerini alın

Bu komutlar, $desc değişkeninin değerini A açıklaması olarak ayarlar ve ardından değişkenin değerini alır.

Set-Variable -Name "desc" -Value "A description"
Get-Variable -Name "desc"

Name                           Value
----                           -----
desc                           A description

Örnek 2: Genel, salt okunur bir değişken ayarlama

Bu örnek, sistemdeki tüm işlemleri içeren genel, salt okunur bir değişken oluşturur ve ardından değişkenin tüm özelliklerini görüntüler.

Set-Variable -Name "processes" -Value (Get-Process) -Option constant -Scope global -Description "All processes" -PassThru |
    Format-List -Property *

Komut, değişkeni oluşturmak için Set-Variable cmdlet'ini kullanır. Yeni değişkeni temsil eden bir nesne oluşturmak için PassThru parametresini kullanır ve nesneyi Format-List<'e geçirmek için ardışık düzen operatörünü (|) kullanır. /code> cmdlet'i. Yeni oluşturulan değişkenin tüm özelliklerini görüntülemek için Format-List'in Property parametresini all değeriyle (*) kullanır.

(Get-Process) değeri, değişkende saklanmadan önce yürütülmesini sağlamak için parantez içine alınır. Aksi takdirde değişken Get-Process sözcüklerini içerir.

Örnek 3: Genel ve özel değişkenleri anlama

Bu örnek, bir değişkenin görünürlüğünün Özel olarak nasıl değiştirileceğini gösterir. Bu değişken gerekli izinlere sahip komut dosyaları tarafından okunabilir ve değiştirilebilir, ancak kullanıcı tarafından görülemez.

New-Variable -Name "counter" -Visibility Public -Value 26
$Counter

26

Get-Variable c*

Name                  Value
----                  -----
Culture               en-US
ConsoleFileName
ConfirmPreference     High
CommandLineParameters {}
Counter               26

Set-Variable -Name "counter" -Visibility Private
Get-Variable c*

Name                  Value
----                  -----
Culture               en-US
ConsoleFileName
ConfirmPreference     High
CommandLineParameters {}

$counter

"Cannot access the variable '$counter' because it is a private variable"

.\use-counter.ps1
#Commands completed successfully.

Bu komut, bir değişkenin görünürlüğünün Özel olarak nasıl değiştirileceğini gösterir. Bu değişken gerekli izinlere sahip komut dosyaları tarafından okunabilir ve değiştirilebilir, ancak kullanıcı tarafından görülemez.

Parametreler

-Confirm

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

Tip :

SwitchParameter

Takma adlar:

cf

Konum:

Adlandırılmış

Varsayılan değer:

False

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-Description

Değişkenin açıklamasını belirtir.

Tip :

String

Konum:

Adlandırılmış

Varsayılan değer:

None

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-Exclude

Bu cmdlet'in işlemden hariç tutulacağı öğelerin dizisini belirtir. Bu parametrenin değeri Yol parametresini nitelendirir. *.txt gibi bir yol öğesi veya modeli girin. Joker karakterlere izin verilir.

Tip :

String[]

Konum:

Adlandırılmış

Varsayılan değer:

None

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

True

-Force

Mevcut bir salt okunur değişkenle aynı adda bir değişken oluşturmanıza veya salt okunur bir değişkenin değerini değiştirmenize olanak sağlar.

Varsayılan olarak, değişkenin seçenek değeri ReadOnly veya Constant olmadığı sürece, değişkenin üzerine yazabilirsiniz. Daha fazla bilgi için Seçenek parametresine bakın.

Tip :

SwitchParameter

Konum:

Adlandırılmış

Varsayılan değer:

False

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-Include

Bu cmdlet'in işlemde içerdiği öğelerin dizisini belirtir. Bu parametrenin değeri Ad parametresini nitelendirir. c* gibi bir ad veya ad modeli girin. Joker karakterlere izin verilir.

Tip :

String[]

Konum:

Adlandırılmış

Varsayılan değer:

None

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

True

-Name

Değişken adını belirtir.

Tip :

String[]

Konum:

0

Varsayılan değer:

None

Gerekli:

True

Boru hattı girişini kabul edin:

True

Joker karakterleri kabul et:

False

-Option

Değişkenin Seçenekler özelliğinin değerini belirtir.

Geçerli değerler şunlardır:

  • Yok: Hiçbir seçeneği ayarlamaz. (Yok varsayılandır.)
  • Salt Okunur: Silinebilir. Force parametresinin kullanılması dışında değiştirilemez.
  • Sabit: Silinemez veya değiştirilemez. Sabit yalnızca bir değişken oluşturduğunuzda geçerlidir. Mevcut bir değişkenin seçeneklerini Sabit olarak değiştiremezsiniz.
  • Özel: Değişken yalnızca geçerli kapsamda kullanılabilir.
  • AllScope: Değişken, oluşturulan tüm yeni kapsamlara kopyalanır.

Bu değerler bayrak tabanlı bir numaralandırma olarak tanımlanır. Bu parametreyi kullanarak birden çok bayrak ayarlamak için birden çok değeri bir araya getirebilirsiniz. Değerler, Option parametresine bir değerler dizisi veya bu değerlerin virgülle ayrılmış dizesi olarak aktarılabilir. Cmdlet, ikili VEYA işlemini kullanarak değerleri birleştirir. Değerleri bir dizi olarak iletmek en basit seçenektir ve aynı zamanda değerler üzerinde sekme tamamlamayı kullanmanıza da olanak tanır.

Tip :

Kapsamlı Öğe Seçenekleri

Kabul edilen değerler:

Yok, Salt Okunur, Sabit, Özel, AllScope, Belirtilmemiş

Konum:

Adlandırılmış

Varsayılan değer:

None

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-PassThru

Yeni değişkeni temsil eden bir nesne döndürür. Varsayılan olarak bu cmdlet herhangi bir çıktı oluşturmaz.

Tip :

SwitchParameter

Konum:

Adlandırılmış

Varsayılan değer:

False

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-Scope

Değişkenin kapsamını belirtir. Bu parametre için kabul edilebilir değerler şunlardır:

    Global
    Local
    Script
    Private
  • Geçerli kapsama göreli bir sayı (0'dan kapsam sayısına kadar; burada 0 geçerli kapsam ve 1 onun üst öğesidir).

Yerel varsayılandır.

Daha fazla bilgi için bkz. about_Scopes.

Tip :

String

Konum:

Adlandırılmış

Varsayılan değer:

Yerel

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-Value

Değişkenin değerini belirtir.

Tip :

Nesne

Konum:

1

Varsayılan değer:

None

Gerekli:

False

Boru hattı girişini kabul edin:

True

Joker karakterleri kabul et:

False

-Visibility

Değişkenin oluşturulduğu oturumun dışında görünür olup olmadığını belirler. Bu parametre, diğer kullanıcılara teslim edilecek komut dosyalarında ve komutlarda kullanılmak üzere tasarlanmıştır.

Geçerli değerler şunlardır:

  • Genel: Değişken görünür. (Genel varsayılandır.)
  • Özel: Değişken görünmez.

Bir değişken özel olduğunda, Get-Variable tarafından döndürülenler gibi değişken listelerinde veya Variable: sürücüsünün görüntülerinde görünmez. Özel bir değişkenin değerini okumaya veya değiştirmeye yönelik komutlar hata döndürür. Ancak kullanıcı, özel değişken kullanan komutları, komutların değişkenin tanımlandığı oturumda yazılmış olması durumunda çalıştırabilir.

Tip :

SessionStateEntryVisibility

Kabul edilen değerler:

Kamu, Özel

Konum:

Adlandırılmış

Varsayılan değer:

Halk

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-WhatIf

Cmdlet çalıştırılırsa ne olacağını gösterir. Cmdlet çalıştırılmıyor.

Tip :

SwitchParameter

Takma adlar:

wi

Konum:

Adlandırılmış

Varsayılan değer:

False

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

Girişler

Nesne

Değişkenin değerini temsil eden bir nesneyi bu cmdlet'e aktarabilirsiniz.

Çıkışlar

Yok

Varsayılan olarak bu cmdlet hiçbir çıktı döndürmez.

PSDeğişkeni

PassThru parametresini kullandığınızda bu cmdlet, yeni veya değiştirilmiş değişkeni temsil eden bir PSVariable nesnesi döndürür.

Notlar

PowerShell, Set-Variable için aşağıdaki takma adları içerir:

  • Tüm platformlar:

      set
      sv

İlgili makaleler