Get-Process
Yerel bilgisayarda çalışan işlemleri alır.
Sözdizimi
Get-Process
[[-Name] <String[]>]
[-Module]
[-FileVersionInfo]
[<CommonParameters>]
Get-Process
[[-Name] <String[]>]
-IncludeUserName
[<CommonParameters>]
Get-Process
-Id <Int32[]>
[-Module]
[-FileVersionInfo]
[<CommonParameters>]
Get-Process
-Id <Int32[]>
-IncludeUserName
[<CommonParameters>]
Get-Process
-InputObject <Process[]>
[-Module]
[-FileVersionInfo]
[<CommonParameters>]
Get-Process
-InputObject <Process[]>
-IncludeUserName
[<CommonParameters>]
Description
Get-Process
cmdlet'i yerel bilgisayardaki işlemleri alır.
Parametreler olmadan, bu cmdlet yerel bilgisayardaki tüm işlemleri alır. Ayrıca işlem adına veya işlem kimliğine (PID) göre belirli bir işlemi belirtebilir veya işlem hattı üzerinden bir işlem nesnesini bu cmdlet'e geçirebilirsiniz.
Varsayılan olarak, bu cmdlet işlem hakkında ayrıntılı bilgiler içeren bir işlem nesnesi döndürür ve işlemi başlatmanıza ve durdurmanıza olanak sağlayan yöntemleri destekler. ayrıca Get-Process
cmdlet'inin parametrelerini, işlemde çalışan programın dosya sürümü bilgilerini almak ve işlemin yüklemiş olduğu modülleri almak için de kullanabilirsiniz.
Örnekler
Örnek 1: Yerel bilgisayardaki tüm etkin işlemlerin listesini alma
Get-Process
Bu komut, yerel bilgisayarda çalışan tüm etkin işlemlerin listesini alır. Her sütunun tanımı için Notlar bölümüne bakın.
Örnek 2: Bir veya daha fazla işlemle ilgili tüm kullanılabilir verileri alma
Get-Process winword, explorer | Format-List *
Bu komut, bilgisayardaki Winword ve Explorer işlemleriyle ilgili tüm kullanılabilir verileri alır. İşlemleri belirtmek için Name parametresini kullanır, ancak isteğe bağlı parametre adını atlar. İşlem hattı işleci (|
), verileri Winword ve Explorer işlem nesnelerinin tüm kullanılabilir özelliklerini (Format-List
) görüntüleyen *
cmdlet'ine geçirir.
İşlemleri, işlem kimliklerine göre de tanımlayabilirsiniz. Örneğin, Get-Process -Id 664, 2060
.
Örnek 3: Belirtilen boyuttan büyük bir çalışma kümesine sahip tüm işlemleri alma
Get-Process | Where-Object {$_.WorkingSet -gt 20000000}
Bu komut, çalışma kümesi 20 MB'tan büyük olan tüm işlemleri alır. Çalışan tüm işlemleri almak için Get-Process
cmdlet'ini kullanır. İşlem hattı işleci (|
), işlem nesnelerini Where-Object
cmdlet'ine geçirir ve bu, yalnızca WorkingSet özelliği için 20.000.000 bayttan büyük bir değere sahip nesneyi seçer.
WorkingSet, işlem nesnelerinin birçok özelliğinden biridir. Tüm özellikleri görmek için Get-Process | Get-Member
yazın. Varsayılan olarak, varsayılan görüntü bunları kilobayt ve megabayt olarak listelese de, tüm tutar özelliklerinin değerleri bayt cinsindendir.
Örnek 4: Bilgisayardaki işlemleri önceliğe göre gruplar halinde listeleme
$A = Get-Process
$A | Get-Process | Format-Table -View Priority
Bu komutlar, bilgisayardaki işlemleri öncelik sınıfına göre gruplar halinde listeler. İlk komut bilgisayardaki tüm işlemleri alır ve sonra bunları $A
değişkeninde depolar.
İkinci komut, değişkeninde depolanan $A
nesnesini Get-Process
cmdlet'ine ve ardından Format-Table
görünümünü kullanarak işlemleri biçimlendiren cmdlet'ine aktarır.
Öncelik görünümü ve diğer görünümler, PowerShell giriş dizinindeki PS1XML biçim dosyalarında ($PSHOME
) tanımlanır.
Örnek 5: Standart Get-Process çıkış ekranına özellik ekleme
Get-Process pwsh | Format-Table `
@{Label = "NPM(K)"; Expression = {[int]($_.NPM / 1024)}},
@{Label = "PM(K)"; Expression = {[int]($_.PM / 1024)}},
@{Label = "WS(K)"; Expression = {[int]($_.WS / 1024)}},
@{Label = "VM(M)"; Expression = {[int]($_.VM / 1MB)}},
@{Label = "CPU(s)"; Expression = {if ($_.CPU) {$_.CPU.ToString("N")}}},
Id, ProcessName, StartTime -AutoSize
NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName StartTime
------ ----- ----- ----- ------ -- ----------- ---------
143 239540 259384 2366162 22.73 12720 pwsh 12/5/2022 3:21:51 PM
114 61776 104588 2366127 11.45 18336 pwsh 12/5/2022 7:30:53 AM
156 77924 82060 2366185 10.47 18812 pwsh 12/5/2022 7:30:52 AM
85 48216 115192 2366074 1.14 24428 pwsh 12/8/2022 9:14:15 AM
Bu örnek, yerel bilgisayardan işlemleri alır. Alınan işlemler, standart Format-Table
çıktı görüntüsüne StartTime özelliğini ekleyen Get-Process
komutuna aktarılır.
Örnek 6: İşlem için sürüm bilgilerini alma
Get-Process pwsh -FileVersionInfo
ProductVersion FileVersion FileName
-------------- ----------- --------
6.1.2 6.1.2 C:\Program Files\PowerShell\6\pwsh.exe
Bu komut, PowerShell işleminin ana modülü olan dosyasının sürüm bilgilerini almak için pwsh.exe
parametresini kullanır.
Bu komutu Windows Vista'da ve Windows'un sonraki sürümlerinde sahip olmadığınız işlemlerle çalıştırmak için PowerShell'i yönetici olarak çalıştır seçeneğiyle açmanız gerekir.
Örnek 7: Belirtilen işlemle yüklenen modülleri alma
Get-Process SQL* -Module
Bu komut, işlem tarafından yüklenen modülleri almak için Module parametresini kullanır.
Bu komut, SQL
ile başlayan adlara sahip işlemlerin modüllerini alır.
Bu komutu Sahip olmadığınız işlemlerle Windows Vista'da ve Windows'un sonraki sürümlerinde çalıştırmak için PowerShell'i yönetici olarak çalıştır seçeneğiyle başlatmanız gerekir.
Örnek 8: İşlemin sahibini bulma
Get-Process pwsh -IncludeUserName
Handles WS(K) CPU(s) Id UserName ProcessName
------- ----- ------ -- -------- -----------
782 132080 2.08 2188 DOMAIN01\user01 pwsh
Bu komut, bir işlemin sahibini bulma işlemini gösterir.
Windows'da IncludeUserName parametresi, geçerli kullanıcı olarak çalışmayan işlemlerin kullanıcılarını görüntülemek için yükseltilmiş kullanıcı hakları (Yönetici olarak çalıştır) gerektirir.
Çıkış, sahibinin Domain01\user01
olduğunu gösterir.
Örnek 9: Geçerli oturumu barındıran işlemi tanımlamak için otomatik değişken kullanma
Get-Process pwsh
NPM(K) PM(M) WS(M) CPU(s) Id SI ProcessName
------ ----- ----- ------ -- -- -----------
83 96.21 105.95 4.33 1192 10 pwsh
79 83.81 117.61 2.16 10580 10 pwsh
Get-Process -Id $PID
NPM(K) PM(M) WS(M) CPU(s) Id SI ProcessName
------ ----- ----- ------ -- -- -----------
83 96.21 77.53 4.39 1192 10 pwsh
Bu komutlar, geçerli PowerShell oturumunu barındıran işlemi tanımlamak için $PID
otomatik değişkenin nasıl kullanılacağını gösterir. Konak işlemini durdurmak veya kapatmak isteyebileceğiniz diğer PowerShell işlemlerinden ayırmak için bu yöntemi kullanabilirsiniz.
İlk komut geçerli oturumdaki tüm PowerShell işlemlerini alır.
İkinci komut, geçerli oturumu barındıran PowerShell işlemini alır.
Örnek 10: Ana pencere başlığı olan tüm işlemleri alma ve bunları tabloda görüntüleme
Get-Process | Where-Object {$_.MainWindowTitle} | Format-Table Id, Name, MainWindowTitle -AutoSize
Bu komut, ana pencere başlığı olan tüm işlemleri alır ve bunları işlem kimliği ve işlem adıyla bir tabloda görüntüler.
MainWindowTitle özelliği, döndüren Get-Process
nesnesinin birçok yararlı özelliğinden yalnızca biridir. Tüm özellikleri görüntülemek için bir Get-Process
komutunun sonuçlarını Get-Member
cmdlet'ine Get-Process | Get-Member
.
Parametreler
-FileVersionInfo
Bu cmdlet'in işlemde çalışan programın dosya sürümü bilgilerini aldığını gösterir.
Windows'da, sahip olmadığınız işlemlerde bu parametreyi kullanmak için PowerShell'i Yönetici olarak çalıştır seçeneğiyle açmanız gerekir.
Bu parametrenin kullanılması, her işlem nesnesinin MainModule.FileVersionInfo özelliğini almakla eşdeğerdir. Bu parametreyi kullandığınızda, Get-Process
bir işlem nesnesi değil System.Diagnostics.FileVersionInfo FileVersionInfo nesnesi döndürür. Bu nedenle, komutun çıkışını Stop-Process
gibi bir işlem nesnesi bekleyen bir cmdlet'e aktaramazsınız.
Tür: | SwitchParameter |
Diğer adlar: | FV, FVI |
Position: | Named |
Default value: | False |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Id
İşlem kimliğine (PID) göre bir veya daha fazla işlemi 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-Process
yazın.
Tür: | Int32[] |
Diğer adlar: | PID |
Position: | Named |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-IncludeUserName
İşlem nesnesinin UserName değerinin komutun sonuçlarıyla döndürüldüğünü gösterir.
Tür: | SwitchParameter |
Position: | Named |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-InputObject
Bir veya daha fazla işlem nesnesi belirtir. Nesneleri içeren bir değişken girin veya nesneleri alan bir komut veya ifade yazın.
Tür: | Process[] |
Position: | Named |
Default value: | None |
Gerekli: | True |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | False |
-Module
Bu cmdlet'in işlemler tarafından yüklenen modülleri aldığını gösterir.
Windows Vista ve windows'un sonraki sürümlerinde, sahip olmadığınız işlemlerde bu parametreyi kullanmak için PowerShell'i yönetici olarak çalıştır seçeneğiyle açmanız gerekir.
Bu parametre, her işlem nesnesinin Modules özelliğini almaya eşdeğerdir. Bu parametreyi kullandığınızda, bu cmdlet bir işlem nesnesi değil System.Diagnostics.ProcessModule nesnesi döndürür. Bu nedenle, komutun çıkışını Stop-Process
gibi bir işlem nesnesi bekleyen bir cmdlet'e aktaramazsınız.
Aynı komutta hem Module hem de FileVersionInfo parametrelerini kullandığınızda, bu cmdlet tüm modüllerin dosya sürümü hakkında bilgi içeren bir FileVersionInfo nesnesi döndürür.
Tür: | SwitchParameter |
Position: | Named |
Default value: | False |
Gerekli: | False |
İşlem hattı girişini kabul et: | False |
Joker karakterleri kabul et: | False |
-Name
İşlem adına göre bir veya daha fazla işlemi belirtir. Birden çok işlem adı (virgülle ayrılmış) yazabilir ve joker karakter kullanabilirsiniz. Parametre adı (Name
) isteğe bağlıdır.
Tür: | String[] |
Diğer adlar: | ProcessName |
Position: | 0 |
Default value: | None |
Gerekli: | False |
İşlem hattı girişini kabul et: | True |
Joker karakterleri kabul et: | True |
Girişler
Bir işlem nesnesini bu cmdlet'e yöneltebilirsiniz.
Çıkışlar
Varsayılan olarak, bu cmdlet bir System.Diagnostics.Process nesnesi döndürür.
FileVersionInfo parametresini kullanırsanız, bu cmdlet bir FileVersionInfo nesnesi döndürür.
FileVersionInfo parametresi olmadan Module parametresini kullanırsanız, bu cmdlet bir ProcessModule nesnesi döndürür.
Notlar
PowerShell, Get-Process
için aşağıdaki diğer adları içerir:
- Tüm platformlar:
gps
- Windows:
ps
Windows'un 64 bit sürümünü çalıştıran bilgisayarlarda, PowerShell'in 64 bit sürümü yalnızca 64 bit işlem modüllerini alır ve PowerShell'in 32 bit sürümü yalnızca 32 bit işlem modüllerini alır.
Uzak bir bilgisayardan işlem bilgilerini almak için Invoke-Command
cmdlet'ini kullanın. Daha fazla bilgi için bkz. Invoke-Command .
PowerShell'de Windows Yönetim Araçları (WMI) Win32_Process nesnesinin özelliklerini ve yöntemlerini kullanabilirsiniz. Bilgi için bkz. Win32_Process.
Bir işlemin varsayılan görüntüsü, aşağıdaki sütunları içeren bir tablodur. İşlem nesnelerinin tüm özelliklerinin açıklaması için bkz. İşlem Özellikleri.
- tanıtıcıları: İşlemin açtığı tanıtıcıların sayısı.
- NPM(K): İşlemin kullandığı disk belleği olmayan bellek miktarı (kilobayt cinsinden).
- pm(K) : İşlemin kullandığı disk belleği belleği miktarı (kilobayt cinsinden).
- WS(K): İşlemin çalışma kümesinin kilobayt cinsinden boyutu. Çalışma kümesi, işlem tarafından yakın zamanda başvuruda bulunan bellek sayfalarından oluşur.
- VM(M): İşlemin kullandığı sanal bellek miktarı (megabayt cinsinden). Sanal bellek, diskteki disk belleği dosyalarında depolama alanı içerir.
- CPU'lar: İşlemin tüm işlemcilerde saniye olarak kullandığı işlemci süresi miktarı.
- Kimliği: İşlemin işlem kimliği (PID).
- ProcessName: İşlemin adı. İşlemlerle ilgili kavramların açıklamaları için Yardım ve Destek Merkezi'ndeki Sözlük'e ve Görev Yöneticisi Yardımı'na bakın.
ayrıca, Format-Table
ile kullanılabilen işlemlerin StartTime ve Prioritygibi yerleşik alternatif görünümlerini kullanabilir ve kendi görünümlerinizi tasarlayabilirsiniz.