Aracılığıyla paylaş


Wait-Process

Daha fazla giriş kabul etmeden önce işlemlerin durdurulmasını bekler.

Sözdizimi

Name EnterprisePublishing

Wait-Process
    [-Name] <String[]>
    [[-Timeout] <Int32>]
    [-Any]
    [-PassThru]
    [<CommonParameters>]

Id

Wait-Process
    [-Id] <Int32[]>
    [[-Timeout] <Int32>]
    [-Any]
    [-PassThru]
    [<CommonParameters>]

InputObject

Wait-Process
    [[-Timeout] <Int32>]
    -InputObject <Process[]>
    [-Any]
    [-PassThru]
    [<CommonParameters>]

Description

Bu cmdlet Linux veya macOS'ta çalışmaz.

Wait-Process cmdlet'i girişi kabul etmeden önce bir veya daha fazla çalışan işlemin durdurulmasını bekler. PowerShell konsolunda bu cmdlet, işlemler durdurulana kadar komut istemini gizler. İşlem adına veya işlem kimliğine (PID) göre bir işlem belirtebilir ya da bir işlem nesnesini Wait-Process'a yöneltebilirsiniz.

Wait-Process yalnızca yerel bilgisayarda çalışan işlemlerde çalışır.

Örnekler

Örnek 1: İşlemi durdurma ve bekleme

Bu örnek, Not Defteri işlemini durdurur ve sonraki komutla devam etmeden önce işlemin durdurulmasını bekler.

$nid = (Get-Process notepad).Id
Stop-Process -Id $nid
Wait-Process -Id $nid

Get-Process cmdlet'i, Not Defteri işleminin işlem kimliğini alır ve $nid değişkeninde depolar. Stop-Process, $nidiçinde depolanan kimlikle işlemi durdurur. Wait-Process Not Defteri işlemi durdurulana kadar bekler.

Örnek 2: İşlem belirtme

Bu örnekte, Wait-Processiçin bir işlem belirtmenin üç farklı yöntemi gösterilmektedir. İlk komut Not Defteri işlemini alır ve $p değişkeninde depolar. İkinci komut Kimliği parametresini, üçüncü komut Name parametresini, dördüncü komut ise InputObject parametresini kullanır.

$p = Get-Process notepad
Wait-Process -Id $p.Id
Wait-Process -Name "notepad"
Wait-Process -InputObject $p

Bu komutlar aynı sonuçlara sahiptir ve birbirinin yerine kullanılabilir.

Örnek 3: Belirtilen süre boyunca işlemleri bekleyin

Bu örnekte Wait-Process, Outlook ve winword işlemlerinin durdurulması için 30 saniye bekler. her iki işlem de durdurulmazsa, cmdlet'i sonlandırılmayan bir hata ve komut istemi görüntüler.

Wait-Process -Name outlook, winword -Timeout 30

Parametreler

-Any

Wait-Process'a birden çok işlem geçirildiğinde, cmdlet geri dönmeden önce tüm işlemlerin çıkmasını bekler. Bu parametreyle, herhangi bir işlem çıktığında cmdlet'i döndürür. Kalan işlemler çalışmaya devam eder.

Bu parametre PowerShell 7.4'e eklendi.

Parametre özellikleri

Tür:SwitchParameter
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Id

İşlemlerin işlem kimliklerini belirtir. Birden çok kimlik belirtmek için, kimlikleri ayırmak için virgül kullanın. Bir işlemin PID'sini bulmak için Get-Processyazın.

Parametre özellikleri

Tür:

Int32[]

Default value:None
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:PID, ProcessId

Parametre kümeleri

Id
Position:0
Zorunlu:True
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:True
Kalan bağımsız değişkenlerden elde edilen değer:False

-InputObject

İşlem nesnelerini göndererek işlemleri belirtir. İşlem nesnelerini içeren bir değişken girin veya Get-Process cmdlet'i gibi işlem nesnelerini alan bir komut veya ifade yazın.

Parametre özellikleri

Tür:

Process[]

Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

InputObject
Position:Named
Zorunlu:True
İşlem hattından gelen değer:True
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Name

İşlemlerin işlem adlarını belirtir. Birden çok ad belirtmek için adları ayırmak için virgül kullanın. Joker karakterler desteklenmez.

Parametre özellikleri

Tür:

String[]

Default value:None
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:İşlemAdı

Parametre kümeleri

Name
Position:0
Zorunlu:True
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:True
Kalan bağımsız değişkenlerden elde edilen değer:False

-PassThru

Varsayılan olarak, bu cmdlet herhangi bir çıkış yapmaz. Bu parametreyle, cmdlet beklenilen işlemleri temsil eden nesneleri döndürür.

Bu parametre PowerShell 7.4'e eklendi.

Parametre özellikleri

Tür:SwitchParameter
Default value:None
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

(All)
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Timeout

Bu cmdlet'in belirtilen işlemlerin durmasını bekleyeceği en uzun süreyi saniye cinsinden belirtir. Bu aralığın süresi dolduğunda, komut hala çalışmakta olan işlemleri listeleyen ve beklemeyi sona erdiren sonlandırılmayan bir hata görüntüler. Varsayılan olarak zaman aşımı yoktur.

Parametre özellikleri

Tür:Int32
Default value:None
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:TimeoutSec

Parametre kümeleri

(All)
Position:1
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

CommonParameters

Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.

Girişler

Process

Bir işlem nesnesini bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

None

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

Process

cmdlet, PassThru parametresini kullandığınızda işlem nesnelerini döndürür.

Notlar

  • Bu cmdlet, System.Diagnostics.Process sınıfının WaitForExit yöntemini kullanır.

  • Start-Process -Waitaksine Wait-Process yalnızca tanımlanan işlemleri bekler. Start-Process -Wait, denetimi döndürmeden önce işlem ağacının (işlem ve tüm alt öğeleri) çıkışını bekler.