hakkında_Dil_Anahtar_Kelimeleri

Kısa açıklama

PowerShell betik dilindeki anahtar sözcükleri açıklar.

Uzun açıklama

PowerShell'de aşağıdaki dil anahtar sözcükleri bulunur. Daha fazla bilgi için anahtar sözcüğün hakkında konusuna ve tabloyu izleyen bilgilere bakın.

Anahtar sözcük Referans
begin about_Functions, about_Functions_Advanced
break mola_hakkında, tuzak_hakkında
catch about_Try_Catch_Finally
class sınıflar_hakkında
clean about_Functions, about_Functions_Advanced_Methods
continue about_Continue, about_Trap
data about_Data_Sections
define Gelecekte kullanmak üzere ayrılmış
do hakkında_Yap, hakkında_İken
dynamicparam Fonksiyonlar Hakkında Gelişmiş Parametreler
else hakkında_Eğer
elseif hakkında_Eğer
end about_Functions, about_Functions_Advanced_Methods
enum about_Enum
exit Bu konuda açıklanmıştır
filter Fonksiyonlar_Hakkında
finally about_Try_Catch_Finally
for hakkında_İçin
foreach about_Foreach
from Gelecekte kullanmak üzere ayrılmış
function about_Functions, about_Functions_Advanced
hidden hakkında_Gizli
if hakkında_Eğer
in about_Foreach
param Fonksiyonlar_Hakkında
process about_Functions, about_Functions_Advanced
return hakkında_Dönüş
static sınıflar_hakkında
switch hakkında_Switch
throw at_Throw, at_İşlevler_Gelişmiş_Yöntemler
trap about_Trap, about_Break, about_Try_Catch_Finally
try about_Try_Catch_Finally
until about_Do
using Kullanma Hakkında, Sınıflar Hakkında
var Gelecekte kullanmak üzere ayrılmış
while about_While, about_Do

Aşağıdaki anahtar sözcükler PowerShell iş akışları tarafından kullanılır:

  • inlinescript
  • parallel
  • sequence
  • workflow

PowerShell iş akışları yalnızca PowerShell 5.1'de desteklenir. İş akışları hakkında daha fazla bilgi için bkz. İş Akışında PowerShell Komutlarını Çalıştırma.

begin

dynamicparam, processve end anahtar sözcükleriyle birlikte işlevin gövdesinin bir bölümünü belirtir. begin ifadeler listesi, işlem hattından herhangi bir nesne alınmadan önce bir kez çalışır.

Sözdizimi:

function <name> {
    dynamicparam {<statement list>}
    begin {<statement list>}
    process {<statement list>}
    end {<statement list>}
}

break

Bir betiğin döngüden çıkmasına neden olur.

Sözdizimi:

while (<condition>) {
   <statements>
   ...

   break
   ...

   <statements>
}

catch

Eşlik eden try deyimi listesinde bir hata oluştuğunda çalıştırılması gereken bir deyim listesi belirtir. Hata türü için ayraç gerekir. İkinci köşeli ayraç çifti, hata türünün isteğe bağlı olabileceğini belirtir.

Sözdizimi:

try {<statement list>}
catch [[<error type>]] {<statement list>}

class

PowerShell'de yeni bir sınıf belirtir.

Sözdizimi:

class <class-name> {
    [[hidden] [static] <property-definition> ...]
    [<class-name>([argument-list>]) {<constructor-statement-list>} ...]
    [[hidden] [static] <method-definition> ...]
}

clean

clean anahtar sözcüğü PowerShell 7.3'e eklendi. anahtar sözcüğü, bir işlevin begin, process ve end bloklarından sonra çalıştırılması garanti edilen bir kod bloğu tanımlar. end bloğundan farklı olarak, diğer bloklardan birinde sonlandırıcı bir hata olsa bile clean bloğu her zaman yürütülür.

continue

Bir betiğin döngü çalıştırmayı durdurmasına ve koşula geri dönmesine neden olur. Koşul karşılanırsa betik yeniden döngüye başlar.

Sözdizimi:

while (<condition>) {
   <statements>
   ...

   continue
   ...

   <statements>
}

data

Betikte, verileri kod mantığından ayıran bir bölüm tanımlar. Ayrıca if deyimlerini ve bazı sınırlı komutları da içerebilir.

Sözdizimi:

data <variable> [-SupportedCommand <cmdlet-name>] {<permitted content>}

do

döngü yapısı olarak while veya until anahtar sözcüğüyle kullanılır. PowerShell, whilekullanan bir döngüden farklı olarak deyim listesini en az bir kez çalıştırır.

whilesöz dizimi:

do {<statement list>} while (<condition>)

untilsöz dizimi:

do {<statement list>} until (<condition>)

dynamicparam

begin, processve end anahtar sözcükleriyle birlikte işlevin gövdesinin bir bölümünü belirtir. Dinamik parametreler çalışma zamanında eklenir.

Sözdizimi:

function <name> {
   dynamicparam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

else

Varsayılan deyim listesini belirtmek için if anahtar sözcüğüyle birlikte kullanılır.

Sözdizimi:

if (<condition>) {<statement list>}
else {<statement list>}

elseif

ek koşullu değerler belirtmek için if ve else anahtar sözcükleriyle birlikte kullanılır. else anahtar sözcüğü isteğe bağlıdır.

Sözdizimi:

if (<condition>) {<statement list>}
elseif (<condition>) {<statement list>}
else {<statement list>}

end

dynamicparam, beginve end anahtar sözcükleriyle birlikte işlevin gövdesinin bir bölümünü belirtir. end bildirim listesi, tüm nesneler veri hattından alındıktan sonra bir kez çalışır.

Sözdizimi:

function <name> {
   dynamicparam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

enum

enum bir numaralandırma bildirmek için kullanılır; numaralandırıcı listesi olarak adlandırılan adlandırılmış etiketler kümesinden oluşan ayrı bir tür.

Sözdizimi:

enum <enum-name> {
    <label> [= <int-value>]
    ...
}

exit

PowerShell'in bir betik veya PowerShell örneğinden çıkmasına neden olur.

Sözdizimi:

exit
exit <exitcode>

pwsh parametresiyle kullandığınızda, .ps1 (betik) dosyasının kendisi betik çalışırken oluşan hataları veya özel durumları işleme yönergeleri içermelidir. Betiğin yürütme sonrası durumunu belirtmek için yalnızca exit deyimini kullanmalısınız.

Windows'ta, [int]::MinValue ile [int]::MaxValue arasında herhangi bir sayıya izin verilir.

Unix'te yalnızca [byte]::MinValue ile [byte]::MaxValue arasında pozitif sayılara izin verilir. -1 -255 aralığındaki negatif bir sayı, 256 eklenerek otomatik olarak pozitif bir sayıya çevrilir. Örneğin, -2254dönüştürülür.

PowerShell'de exit deyimi $LASTEXITCODE değişkeninin değerini ayarlar. Windows Komut Kabuğu'nda (cmd.exe), exit deyimi %ERRORLEVEL% ortam değişkeninin değerini ayarlar.

Sayısal değeri olmayan veya platforma özel aralığın dışında olan bağımsız değişkenler 0değerine çevrilir.

Aşağıdaki örnekte kullanıcı, 4betik dosyasına exit 4 ekleyerek hata düzeyi değişken değerini test.ps1 olarak ayarlar.

C:\scripts\test>type test.ps1
1
2
3
exit 4

C:\scripts\test>pwsh -File ./test.ps1
1
2
3

C:\scripts\test>echo %ERRORLEVEL%
4

pwsh.exe -File <path to a script> çalıştırdığınızda ve betik dosyası bir exit komutuyla sonlandırıldığında, çıkış kodu exit komutuyla kullanılan sayısal bağımsız değişkene ayarlanır. Betiğin exit deyimi yoksa, betik hatasız tamamlandığında çıkış kodu her zaman 0'dir ve betik işlenmeyen bir özel durumdan sonlandırıldığında ise 1'dir.

filter

Her giriş nesnesi için deyim listesinin bir kez çalıştırıldığı bir işlev belirtir. Yalnızca process bloğu içeren bir işlevle aynı etkiye sahiptir.

Sözdizimi:

filter <name> {<statement list>}

finally

try ve catchile ilişkilendirilmiş deyimlerden sonra çalışacak bir deyim listesi tanımlar. finally deyim listesi, betikten çıkmak için CTRL+C tuşlarına bassanız veya betikte exit anahtar sözcüğünü kullansanız bile çalışır.

Sözdizimi:

try {<statement list>}
catch [<error type>] {<statement list>}
finally {<statement list>}

for

Bir koşula sahip bir döngü tanımlar.

Sözdizimi:

for (<initialize>; <condition>; <iterate>) { <statement list> }

foreach

Bir koleksiyonun her üyesini kullanarak bir döngü tanımlar.

Sözdizimi:

foreach (<item> in <collection>) { <statement list> }

from

Gelecekte kullanmak üzere ayrılmıştır.

function

Yeniden kullanılabilir kodun adlandırılmış bir deyim listesini oluşturur. Bir işlevin ait olduğu kapsamı adlandırabilirsiniz. param anahtar sözcüğünü kullanarak bir veya daha fazla adlandırılmış parametre de belirtebilirsiniz. İşlev deyimi listesinde, dynamicparam, begin, processve end deyim listelerini ekleyebilirsiniz.

Sözdizimi:

function [<scope:>]<name> {
   param ([type]<$PName1> [, [type]<$PName2>])
   dynamicparam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

İşlev adından sonra deyim listesinin dışında bir veya daha fazla parametre tanımlama seçeneğiniz de vardır.

Sözdizimi:

function [<scope:>]<name> [([type]<$PName1>, [[type]<$PName2>])] {
   dynamicparam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

if

Bir koşullu durumu tanımlar.

Sözdizimi:

if (<condition>) {<statement list>}

hidden

Sınıf üyelerini Get-Member cmdlet'i, IntelliSense ve sekme tamamlama sonuçlarının varsayılan sonuçlarından gizler.

Sözdizimi:

hidden [data type] $member_name

in

Bir koleksiyonun her üyesini kullanan bir döngü oluşturmak için foreach deyiminde kullanılır.

Sözdizimi:

foreach (<item> in <collection>){<statement list>}

param

İşlevdeki parametreleri tanımlar.

Sözdizimi:

function [<scope:>]<name> {
   param ([type]<$PName1>[, [[type]<$PName2>]])
   <statement list>
}

process

dynamicparam, beginve end anahtar sözcükleriyle birlikte işlevin gövdesinin bir bölümünü belirtir. bir process deyimi listesi işlem hattından giriş aldığında, process deyimi listesi işlem hattındaki her öğe için bir kez çalışır. İşlem hattı hiçbir nesne sağlamazsa, process deyimi listesi çalışmaz. Eğer komut, işlem hattındaki ilk komutsa, process deyim listesi bir kez çalışır.

Sözdizimi:

function <name> {
   dynamicparam {<statement list>}
   begin {<statement list>}
   process {<statement list>}
   end {<statement list>}
}

return

PowerShell'in, geçerli kapsamdan (örn. bir betik veya işlev) çıkmasına neden olur ve isteğe bağlı ifadeyi çıktıya yazar.

Sözdizimi:

return [<expression>]

static

Tanımlanan özelliğin veya yöntemin, tanımlandığı sınıfın tüm örnekleri için ortak olduğunu belirtir.

Kullanım örnekleri için bkz. class.

switch

Birden çok koşulu denetlemek için bir switch deyimi kullanın. switch deyimi, bir dizi if deyimiyle eşdeğerdir, ancak daha basittir.

switch deyimi her koşulu ve isteğe bağlı eylemi listeler. Bir koşul elde edilirse, eylem gerçekleştirilir.

Söz dizimi 1:

switch [-Regex|-Wildcard|-Exact][-CaseSensitive] ( <value> )
{
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   ...

   default {<statement list>}
}

Söz dizimi 2:

switch [-Regex|-Wildcard|-Exact][-CaseSensitive] -File <filename>
{
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   <string>|<number>|<variable>|{ <expression> } {<statement list>}
   ...

   default {<statement list>}
}

throw

Bir nesneyi hata olarak atar.

Sözdizimi:

throw [<object>]

trap

Karşılaşılan bir hata durumunda çalıştırılacak bir ifade listesini tanımlar. Hata türü için ayraç gerekir. İkinci köşeli ayraç çifti, hata türünün isteğe bağlı olabileceğini belirtir.

Sözdizimi:

trap [[<error type>]] {<statement list>}

try

Çalışırken hatalar açısından kontrol edilecek bir ifade listesi tanımlar. Bir hata oluşursa PowerShell bir catch veya finally deyiminde çalışmaya devam eder. Hata türü için ayraç gerekir. İkinci köşeli ayraç çifti, hata türünün isteğe bağlı olabileceğini belirtir.

Sözdizimi:

try {<statement list>}
catch [[<error type>]] {<statement list>}
finally {<statement list>}

until

do deyiminde, deyim listesinin en az bir kez yürütüldüğü döngü yapısı olarak kullanılır.

Sözdizimi:

do {<statement list>} until (<condition>)

using

Oturumda hangi ad alanlarının kullanıldığını belirtmenizi sağlar. Tür adları, sınıflar ve üyelere kolayca başvurabilmek için daha az yazmanız yeterlidir. Ayrıca modüllerden sınıflar da ekleyebilirsiniz.

Ad alanı söz dizimi:

using namespace <.NET-namespace>

Modül söz dizimi:

using module <module-name>

Derleme söz dizimi:

using assembly <.NET-assembly-path>

Daha fazla bilgi için bkz. about_Using.

while

while deyimi, deyimler yürütülmeden önce koşulun test edildiği bir döngü yapısıdır. Koşul yanlış ise deyimler çalıştırılmaz.

Deyim söz dizimi:

while (<condition>) {
   <statements>
 }

do deyiminde kullanıldığında while, deyim listesinin en az bir kez yürütüldüğü döngü yapısının bir parçasıdır.

do döngüsü Sözdizimi:

do {<statement list>} while (<condition>)

Ayrıca bakınız