Stop-Process
Bir veya daha fazla çalışan işlemi durdurur.
Sözdizimi
Id EnterprisePublishing
Stop-Process
[-Id] <Int32[]>
[-PassThru]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Name
Stop-Process
-Name <String[]>
[-PassThru]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
InputObject
Stop-Process
[-InputObject] <Process[]>
[-PassThru]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Stop-Process cmdlet'i bir veya daha fazla çalışan işlemi durdurur. İşlem adına veya işlem kimliğine (PID) göre bir işlem belirtebilir veya bir işlem nesnesini Stop-Processgeçirebilirsiniz.
Stop-Process yalnızca yerel bilgisayarda çalışan işlemlerde çalışır.
Windows Vista ve Windows işletim sisteminin sonraki sürümlerinde, geçerli kullanıcıya ait olmayan bir işlemi durdurmak için PowerShell'i Yönetici olarak çalıştır seçeneğini kullanarak başlatmanız gerekir. Ayrıca, onayla parametresini belirtmediğiniz sürece
Örnekler
Örnek 1: İşlemin tüm örneklerini durdurma
PS C:\> Stop-Process -Name "notepad"
Bu komut, bilgisayardaki Not Defteri işleminin tüm örneklerini durdurur. Not Defteri'nin her örneği kendi işleminde çalışır. tümü aynı ada sahip olan işlemleri belirtmek için Name parametresini kullanır. Aynı işlemleri durdurmak için Kimliği parametresini kullanırsanız, Not Defteri'nin her örneğinin işlem kimliklerini listelemeniz gerekir.
Örnek 2: İşlemin belirli bir örneğini durdurma
PS C:\> Stop-Process -Id 3952 -Confirm -PassThru
Confirm
Are you sure you want to perform this action?
Performing operation "Stop-Process" on Target "notepad (3952)".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help
(default is "Y"):y
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
41 2 996 3212 31 3952 notepad
Bu komut, Not Defteri işleminin belirli bir örneğini durdurur. İşlemi tanımlamak için 3952 işlem kimliğini kullanır.
Confirm parametresi, Işlemi durdurmadan önce PowerShell'i sizden istemeye yönlendirir. İstem, kimliğine ek olarak işlem adını da içerdiğinden, bu en iyi yöntemdir.
PassThru parametresi, işlem nesnesini görüntüleme için biçimlendiriciye geçirir. Bu parametre olmadan, bir Stop-Process komutu sonrasında görüntülenmez.
Örnek 3: Bir işlemi durdurma ve durdurulduğunu algılama
calc
$p = Get-Process -Name "calc"
Stop-Process -InputObject $p
Get-Process | Where-Object {$_.HasExited}
Bu komut dizisi, Calc işlemini başlatır ve durdurur ve ardından durdurulan işlemleri algılar.
İlk komut hesap makinesinin bir örneğini başlatır.
İkinci komut Get-Process kullanır, Calc işlemini temsil eden bir nesne alır ve $p değişkeninde depolar.
Üçüncü komut Calc işlemini durdurur. nesnesini geçirmek için Stop-Process parametresini kullanır.
Son komut, çalışmakta olan ancak artık durdurulan bilgisayardaki tüm işlemleri alır. Bilgisayardaki tüm işlemleri almak için Get-Process kullanır. İşlem hattı işleci (|), sonuçları cmdlet'ine Where-Object geçirir ve HasExited özelliğinin değerinin $true olanları seçer.
HasExited, işlem nesnelerinin yalnızca bir özelliğidir. Tüm özellikleri bulmak için Get-Process | Get-Memberyazın.
Örnek 4: Geçerli kullanıcıya ait olmayan bir işlemi durdurma
PS> Get-Process -Name "lsass" | Stop-Process
Stop-Process : Cannot stop process 'lsass (596)' because of the following error: Access is denied
At line:1 char:34
+ Get-Process -Name "lsass" | Stop-Process <<<<
[ADMIN]: PS> Get-Process -Name "lsass" | Stop-Process
Warning!
Are you sure you want to perform this action?
Performing operation 'Stop-Process' on Target 'lsass(596)'
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):
[ADMIN]: PS> Get-Process -Name "lsass" | Stop-Process -Force
[ADMIN]: PS>
Bu komutlar, kullanıcıya ait olmayan bir işlemi durdurmak için Zorla kullanmanın etkisini gösterir.
İlk komut, Lsass işlemini almak için Get-Process kullanır. İşlem hattı işleci, işlemi durdurmak için Stop-Process gönderir. Örnek çıktıda gösterildiği gibi, ilk komut erişim reddedildi iletisiyle başarısız olur, çünkü bu işlem yalnızca bilgisayardaki Yönetici grubunun bir üyesi tarafından durdurulabilir.
PowerShell yönetici olarak çalıştır seçeneği kullanılarak açıldığında ve komut yinelendiğinde PowerShell sizden onay ister.
İkinci komut, istemini gizlemeye zorla seçeneğini belirtir. Sonuç olarak, işlem onay olmadan durdurulur.
Parametreler
-Confirm
Cmdlet'i çalıştırmadan önce sizden onay ister.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | Cf |
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 |
-Force
Onay istemeden belirtilen işlemleri durdurur. Varsayılan olarak, Stop-Process geçerli kullanıcıya ait olmayan işlemleri durdurmadan önce onay ister.
bir işlemin sahibini bulmak için, işlemi temsil eden bir Get-CimInstance nesnesi almak için cmdlet'ini kullanın ve sonra nesnenin GetOwner yöntemini kullanın.
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
Durdurulacak iş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 |
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
Durdurulacak işlem nesnelerini belirtir. Nesneleri içeren bir değişken girin veya nesneleri 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: | 0 |
| 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
Durdurulacak işlemlerin işlem adlarını belirtir. Virgülle ayırarak birden çok işlem adı yazabilir veya joker karakterler kullanabilirsiniz.
Parametre özellikleri
| Tür: | String[] |
| Default value: | None |
| Joker karakterleri destekler: | True |
| DontShow: | False |
| Diğer adlar: | İşlemAdı |
Parametre kümeleri
Name
| Position: | Named |
| 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
İşlemi temsil eden bir nesne döndürür. Varsayılan olarak, bu cmdlet herhangi bir çıkış oluşturmaz.
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 |
-WhatIf
Cmdlet çalıştırılırsa ne olacağını gösterir. Cmdlet çalıştırılmaz.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | Wi |
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 |
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
PassThru parametresini kullandığınızda, bu cmdlet durdurulan işlemi temsil eden bir İşlem nesnesi döndürür.
Notlar
PowerShell, Stop-Processiçin aşağıdaki diğer adları içerir:
- Tüm platformlar:
spps
- Windows:
kill
Windows PowerShell'de Windows Yönetim Araçları (WMI) Win32_Process nesnesinin özelliklerini ve yöntemlerini de kullanabilirsiniz. Daha fazla bilgi için bkz. Get-CimInstance ve WMI SDK'sı.
- İşlemleri durdururken, bir işlemi durdurmanın işleme ve işleme bağlı hizmetleri durdurabileceğini unutmayın. Aşırı bir durumda, bir işlemin durdurulması Windows'u durdurabilir.