New-Variable
Yeni bir değişken oluşturur.
Syntax
New-Variable
[-Name] <String>
[[-Value] <Object>]
[-Description <String>]
[-Option <ScopedItemOptions>]
[-Visibility <SessionStateEntryVisibility>]
[-Force]
[-PassThru]
[-Scope <String>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
cmdlet'i New-Variable
Windows PowerShell'de yeni bir değişken oluşturur. Değişkeni oluştururken değişkene değer atayabilir veya değeri oluşturduktan sonra atayabilir veya değiştirebilirsiniz.
parametresini New-Variable
kullanarak değişkenin özelliklerini ayarlayabilir, bir değişkenin kapsamını ayarlayabilir ve değişkenlerin ortak mı yoksa özel mi olduğunu belirleyebilirsiniz.
Genellikle, değişken adını ve değerini yazarak yeni bir değişken oluşturursunuz, $Var = 3
ancak cmdlet'ini kullanarak parametrelerini kullanabilirsiniz New-Variable
.
Örnekler
Örnek 1: Değişken İçerik Oluşturucu
New-Variable days
Bu komut days adlı yeni bir değişken oluşturur. Name parametresini yazmanız gerekmez.
Örnek 2: Bir değişkeni İçerik Oluşturucu ve bir değer atayın
New-Variable -Name "zipcode" -Value 98033
Bu komut zipcode adlı bir değişken oluşturur ve 98033 değerini atar.
Örnek 3: ReadOnly seçeneğiyle bir değişken İçerik Oluşturucu
PS C:\> New-Variable -Name Max -Value 256 -Option ReadOnly
PS C:\> New-Variable -Name max -Value 1024
New-Variable : A variable with name 'max' already exists.
At line:1 char:1
+ New-Variable -Name max -Value 1024
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ResourceExists: (max:String) [New-Variable], SessionStateException
+ FullyQualifiedErrorId : VariableAlreadyExists,Microsoft.PowerShell.Commands.NewVariableCommand
PS C:\> New-Variable -Name max -Value 1024 -Force
Bu örnekte, bir değişkenin ReadOnly
üzerine yazılmasını korumak için seçeneğinin New-Variable
nasıl kullanılacağı gösterilmektedir.
İlk komut Max adlı yeni bir değişken oluşturur ve değerini 256 olarak ayarlar. Option parametresini değeriyle ReadOnly
kullanır.
İkinci komut, aynı ada sahip ikinci bir değişken oluşturmaya çalışır. Değişkende salt okunur seçeneği ayarlandığından bu komut bir hata döndürür.
Üçüncü komut, değişkendeki salt okunur korumayı geçersiz kılmak için Force parametresini kullanır. Bu durumda, aynı ada sahip yeni bir değişken oluşturma komutu başarılı olur.
Örnek 4: Bir değişkene birden çok seçenek atama
New-Variable -Name 'TestVariable' -Value 'Test Value' -Option AllScope,Constant
Bu örnek bir değişken oluşturur ve değişkenin AllScope
geçerli kapsamda ve oluşturulan yeni kapsamlarda kullanılabilir olması ve değiştirilememesi veya silinememesi için ve Constant
seçeneklerini atar.
Örnek 5: Özel değişken İçerik Oluşturucu
PS C:\> New-Variable -Name counter -Visibility Private
#Effect of private variable in a module.
PS C:\> Get-Variable c*
Name Value
---- -----
Culture en-US
ConsoleFileName
ConfirmPreference High
CommandLineParameters {}
PS C:\> $counter
"Cannot access the variable '$counter' because it is a private variable"
At line:1 char:1
+ $counter
+ ~~~~~~~~
+ CategoryInfo : PermissionDenied: (counter:String) [], SessionStateException
+ FullyQualifiedErrorId : VariableIsPrivate
PS C:\> Get-Counter
Name Value
---- -----
Counter1 3.1415
...
Bu komut, bir modüldeki özel değişkenin davranışını gösterir. Modülü, Counter adlı özel değişkeni olan cmdlet'ini içerir Get-Counter
. Komut, değişkenini oluşturmak için Private değeriyle Visibility parametresini kullanır.
Örnek çıktı, özel değişkenin davranışını gösterir. Modülü yükleyen kullanıcı Counter değişkeninin değerini görüntüleyebilir veya değiştiremez, ancak Sayaç değişkeni modüldeki komutlar tarafından okunabilir ve değiştirilebilir.
Örnek 6: Boşluk içeren bir değişken İçerik Oluşturucu
PS C:\> New-Variable -Name 'with space' -Value 'abc123xyz'
PS C:\> Get-Variable -Name 'with space'
Name Value
---- -----
with space abc123xyz
PS C:\> ${with space}
abc123xyz
Bu komut, boşluklu değişkenlerin oluşturulabileceğini gösterir. Değişkenlere cmdlet kullanılarak Get-Variable
veya bir değişkeni küme ayraçlarıyla sınırlandırarak doğrudan erişilebilir.
Parametreler
-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 |
-Description
Değişkenin açıklamasını belirtir.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Cmdlet'in var olan bir salt okunur değişkenle aynı ada sahip bir değişken oluşturduğunu gösterir.
Varsayılan olarak, değişkenin veya Constant
seçenek değerine sahip olmadığı sürece değişkenin ReadOnly
üzerine yazabilirsiniz. Daha fazla bilgi için Option parametresine bakın.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Yeni değişken için bir ad belirtir.
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Option
Değişkenin Options özelliğinin değerini belirtir. Bu parametrenin kabul edilebilir değerleri şunlardır:
None
- Seçenek belirlemez.None
varsayılan değerdir.ReadOnly
- Silinebilir. Force parametresinin kullanılması dışında değiştirilemez.Private
- Değişken yalnızca geçerli kapsamda kullanılabilir.AllScope
- Değişken, oluşturulan tüm yeni kapsamlara kopyalanır.Constant
- Silinemez veya değiştirilemez.Constant
yalnızca değişken oluştururken geçerlidir. Var olan bir değişkenin seçeneklerini olarakConstant
değiştiremezsiniz.
Bu değerler, bayrak tabanlı bir numaralandırma olarak tanımlanır. Bu parametreyi kullanarak birden çok bayrağı ayarlamak için birden çok değeri birleştirebilirsiniz. Değerler Option parametresine bir değer dizisi veya bu değerlerin virgülle ayrılmış dizesi olarak geçirilebilir. cmdlet'i, değerleri ikili OR işlemi kullanarak birleştirir. Değerleri dizi olarak geçirmek en basit seçenektir ve değerlerde sekme tamamlama özelliğini kullanmanıza da olanak tanır.
Oturumdaki tüm değişkenlerin Options özelliğini görmek için yazın Get-Variable | Format-Table -Property name, options -AutoSize
.
Type: | ScopedItemOptions |
Accepted values: | None, ReadOnly, Constant, Private, AllScope, Unspecified |
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 çıktı üretmez.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Scope
Yeni değişkenin kapsamını belirtir. Bu parametrenin kabul edilebilir değerleri şunlardır:
Global
- Genel kapsamda oluşturulan değişkenlere PowerShell işleminin her yerinde erişilebilir.Local
- Yerel kapsam geçerli kapsama başvurur, bağlama bağlı olarak herhangi bir kapsam olabilir.Script
- Betik kapsamında oluşturulan değişkenlere yalnızca oluşturuldukları betik dosyası veya modülden erişilebilir.Private
- Özel kapsamda oluşturulan değişkenlere, bulundukları kapsam dışından erişilemez. Başka bir kapsamda aynı ada sahip bir öğenin özel sürümünü oluşturmak için özel kapsamı kullanabilirsiniz.- Geçerli kapsama göre bir sayı (kapsam sayısı üzerinden 0; burada 0 geçerli kapsam, 1 üst, 2 üst kapsamın üst öğesi vb.). Negatif sayılar kullanılamaz.
Local
, kapsam parametresi belirtilmediğinde varsayılan kapsamdır.
Daha fazla bilgi için bkz. about_Scopes.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Value
Değişkenin ilk değerini belirtir.
Type: | Object |
Position: | 1 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | 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 betiklerde ve komutlarda kullanılmak üzere tasarlanmıştır. Bu parametrenin kabul edilebilir değerleri şunlardır:
Public
- Değişken görünür durumdadır.Public
varsayılan değerdir.Private
- Değişken görünür değil.
Bir değişken özel olduğunda, tarafından Get-Variable
döndürülenler gibi değişken listelerinde veya sürücünün görüntülerinde Variable:
görünmez. Özel değişkenin değerini okuma veya değiştirme komutları hata döndürür. Ancak, komutlar değişkenin tanımlandığı oturumda yazıldıysa, kullanıcı özel değişken kullanan komutları çalıştırabilir.
Type: | SessionStateEntryVisibility |
Accepted values: | Public, Private |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
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
Bir değeri öğesine New-Variable
yöneltebilirsiniz.
Çıkışlar
None or System.Management.Automation.PSVariable
PassThru parametresini kullandığınızda, New-Variable
yeni değişkeni temsil eden bir System.Management.Automation.PSVariable nesnesi oluşturur. Aksi takdirde, bu cmdlet herhangi bir çıkış oluşturmaz.