Aracılığıyla paylaş


Get-Process

Yerel bilgisayarda veya uzak bilgisayarda çalışan işlemleri alır.

Syntax

Name (Varsayılan)

Get-Process
    [[-Name] <String[]>]
    [-ComputerName <String[]>]
    [-Module]
    [-FileVersionInfo]
    [<CommonParameters>]

NameWithUserName

Get-Process
    [[-Name] <String[]>]
    [-IncludeUserName]
    [<CommonParameters>]

IdWithUserName

Get-Process
    -Id <Int32[]>
    [-IncludeUserName]
    [<CommonParameters>]

Id

Get-Process
    -Id <Int32[]>
    [-ComputerName <String[]>]
    [-Module]
    [-FileVersionInfo]
    [<CommonParameters>]

InputObjectWithUserName

Get-Process
    -InputObject <Process[]>
    [-IncludeUserName]
    [<CommonParameters>]

InputObject

Get-Process
    -InputObject <Process[]>
    [-ComputerName <String[]>]
    [-Module]
    [-FileVersionInfo]
    [<CommonParameters>]

Description

Get-Process cmdlet'i işlemleri yerel veya uzak bir bilgisayarda alır.

Parametreler olmadan, bu cmdlet yerel bilgisayardaki tüm işlemleri alır. Ayrıca, belirli bir işlemi işlem adına veya işlem kimliğine (PID) göre veya system.diagnostics.process nesnesini bu cmdlet'e ekleyerek belirtebilirsiniz.

Varsayılan olarak, bu cmdlet işlem hakkında ayrıntılı bilgiler içeren bir İşlem nesnesi döndürür ve bunu denetlemenize olanak sağlayan yöntemleri destekler. Parametrelerle, bu cmdlet tarafından döndürülen bilgi türünü değiştirebilirsiniz.

  • Modül: İşleme yüklenen her modülün bilgilerini alın.
  • FileVersionInfo: İşlemin ana modülü için dosya sürümü bilgilerini alın.

Uyarı

Modül, bir işleme yüklenen yürütülebilir bir dosya veya dinamik bağlantı kitaplığıdır (DLL). Bir işlemin bir veya daha fazla modülü vardır. Ana modül, başlangıçta işlemi başlatmak için kullanılan modüldür. Daha fazla bilgi için bkz . ProcessModule Sınıfı.

Örnekler

Örnek 1: Yerel bilgisayarda çalışan tüm işlemlerin listesini alma

Get-Process

Bu komut, yerel bilgisayardaki tüm çalışan işlemlerin listesini alır. Her görüntüleme sütununun tanımı için NOTLAR bölümüne bakın.

İşlem nesnesinin tüm özelliklerini görmek için kullanınGet-Process | Get-Member. PowerShell varsayılan olarak kilobayt (K) ve megabayt (M) gibi birimleri kullanarak belirli özellik değerlerini görüntüler. Üye erişim işleci (.) ile erişildiğinde gerçek değerler bayt cinsindendir.

Örnek 2: Bir veya daha fazla işlem hakkında ayrıntılı bilgi görüntüleme

Get-Process winword, explorer | Format-List *

Bu işlem hattı, bilgisayardaki ve explorer işlemleriyle ilgili winword ayrıntılı bilgileri görüntüler. İşlemleri belirtmek için Name parametresini kullanır, ancak isteğe bağlı parametre adını atlar. İşlem hattı işleci (|), process nesnelerini cmdlet'ine Format-List işler ve bu cmdlet'e her nesne için tüm kullanılabilir özellikleri (*) ve değerlerini görüntüler.

İş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 20971520 }
Get-Process | Where-Object WorkingSet -GT 20MB

Get-Process Cmdlet, çalışan işlemleri döndürür. Çıkış, 20.971.520 bayttan büyük bir WorkingSet değerine sahip nesneleri seçen cmdlet'ine yöneltilirWhere-Object.

İlk örnekte, Where-Object her process nesnesinin WorkingSet özelliğini karşılaştırmak için bir betik bloğu kullanır. İkinci örnekte, cmdlet WorkingSetWhere-Object özelliğini karşılaştırmak için basitleştirilmiş söz dizimini kullanır. Bu durumda, -GT karşılaştırma işleci değil parametredir. İkinci örnek, öğesine alternatif olarak kısa bir alternatif 20971520olarak sayısal değişmez değer soneki de kullanır. PowerShell'de bir MB mebibayt (MiB) çarpanı temsil eder. 20MB 20.971.520 bayta eşittir.

Örnek 4: Bilgisayardaki işlemleri önceliğe göre gruplar halinde görüntüleme

$processes = Get-Process
$processes | Sort-Object { $_.PriorityClass } | Format-Table -View Priority

Bu komutlar, bilgisayardaki işlemleri öncelik sınıfına göre gruplar halinde görüntüler. İlk komut bilgisayardaki tüm işlemleri alır ve bunları değişkende $processes depolar.

İkinci komut, değişkende depolanan İşlem nesnelerini cmdlet'ine $processesSort-Object , ardından Format-Table da Öncelik görünümünü kullanarak işlemleri biçimlendiren cmdlet'e aktarır.

Öncelik görünümü ve diğer görünümler, PowerShell giriş dizinindeki .ps1xml ($PSHOME) biçim dosyalarında tanımlanır.

Örnek 5: Varsayılan 'Get-Process' çıkış ekranına özellik ekleme

Get-Process -Name powershell | Format-Table -Property @(
    'Handles'
    @{ Name = 'NPM(K)'; Expression = { [int] ($_.NPM / 1KB) } }
    @{ Name = 'PM(K)';  Expression = { [int] ($_.PM / 1KB) } }
    @{ Name = 'WS(K)';  Expression = { [int] ($_.WS / 1KB) } }
    @{ Name = 'CPU(s)'; Expression = { if ($_.CPU) { $_.CPU.ToString('N') } } }
    'Id'
    @{ Name = 'SI'; Expression = 'SessionId' }
    'ProcessName'
    'StartTime'
) -AutoSize
Handles NPM(K) PM(K) WS(K) CPU(s)   Id SI ProcessName StartTime
------- ------ ----- ----- ------   -- -- ----------- ---------
    655     34 69424 83424 2.20   4240  1 powershell  4/14/2025 10:40:10 AM
    572     36 68768 57260 7.41   4968  1 powershell  4/13/2025 3:33:50 PM
    405     26 38144 30340 1.80   8776  1 powershell  4/14/2025 9:54:27 AM

Bu örnek, yerel bilgisayardan işlemleri alır ve her process nesnesini cmdlet'ine Format-Table aktarır. Format-Tableözellik adlarının ve hesaplanan özelliklerin bir karışımını kullanarak İşlem nesnesinin varsayılan çıkış görüntüsünü yeniden oluşturur. Görüntü, varsayılan ekranda bulunmayan ek bir StartTime özelliği içerir.

Örnek 6: İşlem için sürüm bilgilerini alma

Get-Process -Name powershell -FileVersionInfo
ProductVersion   FileVersion      FileName
--------------   -----------      --------
10.0.19041.320   10.0.19041.32... C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe

Bu komut, işlemin ana modülüne ilişkin dosya sürümü bilgilerini almak için FileVersionInfo parametresini powershell kullanır. Ana modül, işlemi başlatmak için kullanılan ve bu örnekte olan dosyasıdır powershell.exe.

Bu komutu Windows Vista'da ve Windows'un sonraki sürümlerinde sahip olmadığınız işlemlerle kullanmak için PowerShell'i yükseltilmiş kullanıcı haklarıyla çalıştırmanız gerekir (Yönetici olarak çalıştır).

Örnek 7: Belirtilen işlemle yüklenen modülleri alma

Get-Process -Name SQL* -Module

Bu komut , ile başlayan SQLbir ada sahip tüm işlemler tarafından yüklenen modülleri almak için Module parametresini kullanır.

Bu komutu Windows Vista'da ve Windows'un sonraki sürümlerinde sahip olmadığınız işlemlerle kullanmak için PowerShell'i yükseltilmiş kullanıcı haklarıyla çalıştırmanız gerekir (Yönetici olarak çalıştır).

Örnek 8: İşlemin sahibini bulma

Get-Process -Name powershell -IncludeUserName
Handles      WS(K)   CPU(s)     Id UserName            ProcessName
-------      -----   ------     -- --------            -----------
    782     132080     2.08   2188 DOMAIN01\user01     powershell
Get-CimInstance -ClassName Win32_Process -Filter "name='powershell.exe'" |
    Invoke-CimMethod -MethodName GetOwner
Domain   ReturnValue User   PSComputerName
------   ----------- ----   --------------
DOMAIN01           0 user01

İlk komut, bir işlemin sahibini nasıl edineceklerini gösterir. IncludeUserName parametresi yükseltilmiş kullanıcı hakları gerektirir (Yönetici olarak çalıştır). Çıkış, sahibinin DOMAIN01\user01olduğunu gösterir.

İkinci işlem hattı, ve Invoke-CimMethodkullanarak Get-CimInstance bir işlemin sahibini almak için farklı bir yol gösterir. Filtre içeren Win32_Process sınıfı işlemleri alır powershell ve çağrılan GetOwner() yöntem işlemin Etki Alanı ve Kullanıcı bilgileri döndürür. Bu yöntem yükseltilmiş kullanıcı hakları gerektirmez.

Örnek 9: Geçerli oturumu barındıran işlemi tanımlamak için otomatik değişken kullanma

Get-Process -Name powershell
Handles  NPM(K)    PM(K)      WS(K)     CPU(s)     Id  SI ProcessName
-------  ------    -----      -----     ------     --  -- -----------
    561      44    47564      40740       6.48   2604   1 powershell
    642      40    72040      24372      23.53   3576   1 powershel
Get-Process -Id $PID
Handles  NPM(K)    PM(K)      WS(K)     CPU(s)     Id  SI ProcessName
-------  ------    -----      -----     ------     --  -- -----------
    647      40    72464      30716      23.67   3576   1 powershell

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 denetlemek isteyebileceğiniz diğer powershell işlemlerden ayırmak için bu yöntemi kullanabilirsiniz.

İlk komut tüm powershell işlemleri çalıştırır. İkinci komut geçerli oturumu barındıran işlemi alır powershell .

Örnek 10: Ana pencere başlığı olan tüm işlemleri alma ve bunları tabloda görüntüleme

Get-Process |
    Where-Object -Property MainWindowTitle |
    Format-Table -Property Id, Name, MainWindowTitle -AutoSize

Bu işlem hattı, ana pencere başlığı olan tüm işlemleri alır ve bunları işlem kimliği ve adıyla bir tabloda görüntüler.

MainWindowTitle , döndüren Diagnostics.Process nesne türünün birçok yararlı özelliğinden Get-Process biridir. Tüm özellikleri görüntülemek için kullanın Get-Process | Get-Member.

Parametreler

-ComputerName

Bu cmdlet'in çalışan işlemleri aldığı bilgisayarları belirtir. Varsayılan değer yerel bilgisayardır.

Bir veya daha fazla bilgisayarın NetBIOS adını, IP adresini veya tam etki alanı adını (FQDN) belirtin. Yerel bilgisayarı belirtmek için bilgisayar adını, nokta (). veya localhostkullanın.

Bu parametre Windows PowerShell uzaktan iletişimini desteklemez. Bilgisayarınız uzak komutları çalıştıracak şekilde yapılandırılmamış olsa bile bu cmdlet'in ComputerName parametresini kullanabilirsiniz.

Parametre özellikleri

Tür:

String[]

Default value:Local computer
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:Cn

Parametre kümeleri

Name
Position:Named
Zorunlu:False
İş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
Id
Position:Named
Zorunlu:False
İş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
Position:Named
Zorunlu:False
İş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

-FileVersionInfo

Bu cmdlet'in işlemde çalışan programın dosya sürümü bilgilerini 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ükseltilmiş kullanıcı haklarıyla (Yönetici olarak çalıştır) çalıştırmanız gerekir.

FileVersionInfo ve ComputerName parametrelerini birlikte kullanamazsınız.

Uzak bilgisayardaki bir işlemin dosya sürümü bilgilerini almak için Invoke-Command cmdlet'ini kullanın.

Bu parametreyi kullanmak, her process nesnesinin MainModule.FileVersionInfo özelliğine erişmekle aynıdır. Bu parametreyi kullandığınızda, Get-Processprocess nesnesi değil FileVersionInfo nesnesi döndürür. Bu parametre kullanılarak üretilen çıkışı gibi Stop-Processbir process nesnesi bekleyen bir cmdlet'e aktaramazsınız.

Parametre özellikleri

Tür:SwitchParameter
Default value:False
Joker karakterleri destekler:False
DontShow:False
Diğer adlar:FV, FVI

Parametre kümeleri

Name
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
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
InputObject
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

İşlem kimliğine (PID) göre bir veya daha fazla işlemi belirtir. Virgülle ayrılmış birden çok kimlik belirtebilirsiniz. Bir işlemin PID'sini almak için kullanın Get-Process. Geçerli PowerShell oturumunun PID'sini almak için kullanın $PID.

Parametre özellikleri

Tür:

Int32[]

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

Parametre kümeleri

IdWithUserName
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
Id
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

-IncludeUserName

Bu komutun döndürülen her process nesnesine bir UserName özelliği eklediğini gösterir.

Bu parametreyi kullanmak için PowerShell'i yükseltilmiş kullanıcı haklarıyla (Yönetici olarak çalıştır) çalıştırmanız gerekir.

Parametre özellikleri

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

Parametre kümeleri

NameWithUserName
Position:Named
Zorunlu:True
İş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
IdWithUserName
Position:Named
Zorunlu:True
İş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
InputObjectWithUserName
Position:Named
Zorunlu:True
İş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

-InputObject

Bir veya daha fazla İşlem nesnesi belirtir. Nesneleri içeren bir değişken veya nesneleri alan bir komut veya ifade kullanın.

Parametre özellikleri

Tür:

Process[]

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

Parametre kümeleri

InputObjectWithUserName
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
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

-Module

Bu cmdlet'in işlemin yüklediği 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ükseltilmiş kullanıcı haklarıyla (Yönetici olarak çalıştır) çalıştırmanız gerekir.

Uzak bilgisayardaki bir işlem tarafından yüklenen modülleri almak için cmdlet'ini Invoke-Command kullanın.

Bu parametreyi kullanmak, her İşlem nesnesinin Modules özelliğine erişmekle aynıdır. Bu parametreyi kullandığınızda, Get-Process process nesnesi değil ProcessModulenesnesi döndürür . Bu parametre kullanılarak üretilen çıkışı gibi Stop-Processbir process nesnesi bekleyen bir cmdlet'e aktaramazsınız.

Hem Module hem de FileVersionInfo parametrelerini birlikte 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.

Parametre özellikleri

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

Parametre kümeleri

Name
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
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
InputObject
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

-Name

İşlem adına göre bir veya daha fazla işlemi belirtir. Virgülle ayrılmış birden çok işlem adı belirtebilir ve joker karakterler kullanabilirsiniz. parametresini -Name kullanmak isteğe bağlıdır.

Parametre özellikleri

Tür:

String[]

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

Parametre kümeleri

Name
Position:0
Zorunlu:False
İş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
NameWithUserName
Position:0
Zorunlu:False
İş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

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

İşlem nesnelerini bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

Process

Varsayılan olarak, bu cmdlet bir System.Diagnostics.Process nesnesi döndürür.

FileVersionInfo

FileVersionInfo parametresini kullanırsanız, bu cmdlet bir System.Diagnostics.FileVersionInfo nesnesi döndürür.

ProcessModule

FileVersionInfo parametresi olmadan Module parametresini kullanırsanız, bu cmdlet bir System.Diagnostics.ProcessModule nesnesi döndürür.

Notlar

Windows PowerShell, Get-Processiçin aşağıdaki diğer adları içerir:

  • gps
  • ps

64 bit Windows çalıştıran bilgisayarlarda PowerShell'in 64 bit sürümü ana modülü ve 64 bit işlem modüllerini alır. PowerShell'in 32 bit sürümü yalnızca 32 bit işlem modüllerini alır.

Uyarı

PowerShell'in 32 bit sürümünde 64 bitlik bir işlem almak için kullandığınızdaGet-Process, döndürülen İşlem nesnesinin ve MainModule gibi Path özellikleri olur$null. PowerShell'in 64 bit sürümünü veya Win32_Process sınıfını kullanmanız gerekir.

Uzak bir bilgisayardan işlem bilgilerini almak için Invoke-Command cmdlet'ini kullanın. Daha fazla bilgi için bkz. Invoke-Command.

Alternatif olarak PowerShell'de Windows Yönetim Araçları (WMI) Win32_Process sınıfını Get-Processkullanabilirsiniz. Daha fazla bilgi için bakınız:

İşlem nesnesinin varsayılan görüntüsü, aşağıdaki sütunları içeren bir tablo görünümüdür.

  • 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.
  • CPU'lar: İşlemin tüm işlemcilerde saniye olarak kullandığı işlemci süresi miktarı.
  • Kimliği: İşlemin işlem kimliği (PID).
  • SI: İşlemin oturum kimliği.
  • ProcessName: İşlemin adı.

ile kullanılabilen Format-TableStartTime ve Priority gibi İşlem nesneleri için yerleşik alternatif görünümleri kullanabilirsiniz. Kendi görünümlerinizi de tasarlayabilirsiniz.

Kullanılabilir tüm İşlem nesnesi üyelerinin açıklaması için bkz. İşlem Özellikleri ve İşlem Yöntemleri.