Remove-Job
PowerShell arka plan işini siler.
Sözdizimi
SessionIdParameterSet EnterprisePublishing
Remove-Job
[-Id] <Int32[]>
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
JobParameterSet
Remove-Job
[-Job] <Job[]>
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
NameParameterSet
Remove-Job
[-Name] <String[]>
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
InstanceIdParameterSet
Remove-Job
[-InstanceId] <Guid[]>
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
FilterParameterSet
Remove-Job
[-Filter] <Hashtable>
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
StateParameterSet
Remove-Job
[-State] <JobState>
[-WhatIf]
[-Confirm]
[<CommonParameters>]
CommandParameterSet
Remove-Job
[-Command <String[]>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Remove-Job cmdlet'i veya Start-Job parametresini destekleyen Invoke-Command gibi cmdlet'ler tarafından başlatılan PowerShell arka plan işlerini, cmdlet'i siler.
tüm işleri silmek veya seçili işleri silmek için Remove-Job kullanabilirsiniz. İşler, Adı, Kimliği, InstanceId, Commandveya Stateile tanımlanır. Veya, bir iş nesnesi Remove-Jobişlem hattına gönderilebilir. Parametreler veya parametre değerleri olmadan Remove-Job hiçbir etkisi olmaz.
PowerShell 3.0'dan bu yana Remove-Job zamanlanmış işler ve iş akışı işleri gibi özel iş türlerini silebilir. Örneğin, Remove-Job zamanlanmış işi, diskte zamanlanan işin tüm örneklerini ve tetiklenen tüm iş örneklerinin sonuçlarını siler.
Çalışan bir işi silmeye çalışırsanız Remove-Job hata verir. Çalışan bir işi durdurmak için Stop-Job cmdlet'ini kullanın. Ya da çalışan bir işi silmek için Remove-Job parametresi ile kullanın.
Arka plan işini silene veya PowerShell oturumunu kapatana kadar işler genel iş önbelleğinde kalır.
Örnekler
Örnek 1: Adını kullanarak bir işi silme
Bu örnekte bir işi ada göre silmek için bir değişken ve işlem hattı kullanılır.
$batch = Get-Job -Name BatchJob
$batch | Remove-Job
Get-Job, Name- parametresini iş belirtmek için BatchJobkullanır. İş nesnesi $batch değişkeninde depolanır.
$batch içindeki nesne işlem hattından Remove-Job'e gönderilir.
Alternatif olarak gibi Remove-Job -Job $batch parametresini kullanabilirsiniz.
Örnek 2: Oturumdaki tüm işleri silme
Bu örnekte, geçerli PowerShell oturumundaki tüm işler silinir.
Get-Job | Remove-Job
Get-Job, geçerli PowerShell oturumundaki tüm işleri alır. İş nesneleri işlem hattına Remove-Jobgönderilir.
Örnek 3: Başlatılmamış işlerini silme
Bu örnek, geçerli PowerShell oturumundan başlatılmamış tüm işleri siler.
Remove-Job -State NotStarted
Remove-Job, iş durumunu belirtmek için State parametresini kullanır.
Örnek 4: Anlamlı bir ad kullanarak görevleri silme
Bu örnek, geçerli oturumdaki, çalışan işler de dahil olmak üzere, dost adları topluile biten tüm işleri siler.
Remove-Job -Name *batch -Force
Remove-Job bir iş adı deseni belirtmek için Adı parametresini kullanır. Desen, *ile biten tüm iş adlarını bulmak için yıldız işareti () joker karakterini içerir.
Zorlama parametresi, çalışmakta olan işleri siler.
Örnek 5: Invoke-Command tarafından oluşturulan bir işi silme
Bu örnek, Invoke-Command parametresiyle kullanılarak uzak bilgisayarda başlatılan bir işi kaldırır.
Örnekte asjob parametresi kullanıldığından, iş nesnesi yerel bilgisayarda oluşturulur. Ancak, iş uzak bir bilgisayarda çalıştırılır. Sonuç olarak, işi yönetmek için yerel komutları kullanırsınız.
$job = Invoke-Command -ComputerName Server01 -ScriptBlock {Get-Process} -AsJob
$job | Remove-Job
Invoke-Command, Server01 bilgisayarında bir görev çalıştırır.
AsJob parametresi, arka plan işi olarak ScriptBlock çalıştırır. İş nesnesi $job değişkeninde depolanır.
$job değişken nesnesi Remove-Job'e işlem hattından aşağı gönderilir.
Örnek 6: Invoke-Command ve Start-Job tarafından oluşturulan bir işi silme
Bu örnekte, Invoke-Commandçalıştırmak için Start-Job kullanılarak başlatılan uzak bir bilgisayardaki işin nasıl kaldırılacağı gösterilmektedir. İş nesnesi uzak bilgisayarda oluşturulur ve işi yönetmek için uzak komutlar kullanılır. Uzak Start-Job komutu çalıştırılırken kalıcı bir bağlantı gereklidir.
$S = New-PSSession -ComputerName Server01
Invoke-Command -Session $S -ScriptBlock {Start-Job -ScriptBlock {Get-Process} -Name MyJob}
Invoke-Command -Session $S -ScriptBlock {Remove-Job -Name MyJob}
New-PSSession, Server01 bilgisayara kalıcı bir bağlantı olan pssessionoluşturur. Bağlantı $S değişkenine kaydedilir.
Invoke-Command, $Solarak kaydedilen oturuma bağlanır.
ScriptBlock uzaktan iş başlatmak için Start-Job kullanır. İş, bir Get-Process komutu çalıştırır ve MyJobgibi anlaşılır bir iş adı belirtmek için Adı parametresini kullanır.
Invoke-Command
$S oturumunu kullanır ve Remove-Jobçalıştırır.
Adı parametresi, MyJob adlı işin silindiğini belirtir.
Örnek 7: InstanceId değerini kullanarak bir işi silme
Bu örnek, InstanceIdtemelinde bir işi kaldırır.
$job = Start-Job -ScriptBlock {Get-Process powershell}
$job | Format-List -Property *
Remove-Job -InstanceId ad02b942-8007-4407-87f3-d23e71955872
State : Completed
HasMoreData : True
StatusMessage :
Location : localhost
Command : Get-Process powershell
JobStateInfo : Completed
Finished : System.Threading.ManualResetEvent
InstanceId : ad02b942-8007-4407-87f3-d23e71955872
Id : 3
Name : Job3
ChildJobs : {Job4}
PSBeginTime : 7/26/2019 11:36:56
PSEndTime : 7/26/2019 11:36:57
PSJobTypeName : BackgroundJob
Output : {}
Error : {}
Progress : {}
Verbose : {}
Debug : {}
Warning : {}
Information : {}
Start-Job bir arka plan işi başlatır ve iş nesnesi $job değişkenine kaydedilir.
$job içindeki nesne işlem hattından Format-List'e gönderilir.
Özelliği parametresi, nesnenin tüm özelliklerinin listede görüntüleneceğini belirtmek için yıldız işareti (*) kullanır.
Remove-Job silinecek işi belirtmek için InstanceId parametresini kullanır.
Parametreler
-Command
Komutta belirtilen sözcükleri içeren işleri siler. Virgülle ayrılmış bir dizi girebilirsiniz.
Parametre özellikleri
| Tür: | String[] |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
CommandParameterSet
| 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 |
-Confirm
Remove-Job çalıştırilmeden ö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 |
-Filter
İlişkili karma tabloda belirlenen tüm koşulları karşılayan görevleri siler. Bir karma tablo girin, burada anahtarlar iş özellikleri, değerler ise iş özelliği değerleridir.
Bu parametre yalnızca iş akışı işleri ve zamanlanmış işler gibi özel iş türlerinde çalışır.
Start-Jobkullanılarak oluşturulanlar gibi standart arka plan işlerinde çalışmaz.
Bu parametre PowerShell 3.0'da kullanıma sunulmuştur.
Parametre özellikleri
| Tür: | Hashtable |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
FilterParameterSet
| 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 |
-Force
İşin durumu Çalışıyorolsa bile bir işi siler.
Force parametresi belirtilmezse, Remove-Job çalışan işleri silmez.
Parametre özellikleri
| Tür: | SwitchParameter |
| Default value: | False |
| Joker karakterleri destekler: | False |
| DontShow: | False |
| Diğer adlar: | F |
Parametre kümeleri
SessionIdParameterSet
| 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 |
JobParameterSet
| 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 |
InstanceIdParameterSet
| 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 |
NameParameterSet
| 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 |
FilterParameterSet
| 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
Belirtilen Kimliğine sahip arka plan işlerini siler. Virgülle ayrılmış bir dizi girebilirsiniz. İşin Kimliği, geçerli oturumdaki bir işi tanımlayan benzersiz bir tamsayıdır.
bir işin kimliğinibulmak için parametresiz Get-Job kullanın.
Parametre özellikleri
| Tür: | Int32[] |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
SessionIdParameterSet
| 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 |
-InstanceId
Belirtilen InstanceIdolan işleri siler. Virgülle ayrılmış bir dizi girebilirsiniz. InstanceId, bir işi tanımlayan benzersiz bir GUID'dir.
Bir işin InstanceId'ini bulmak için Get-Jobkullanın.
Parametre özellikleri
| Tür: | Guid[] |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
InstanceIdParameterSet
| 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 |
-Job
Silinecek işleri belirtir. İşleri içeren bir değişken veya işleri getiren bir komut girin. Virgülle ayrılmış bir dizi girebilirsiniz.
İş nesnelerini işlem hattı boyunca Remove-Job'a gönderebilirsiniz.
Parametre özellikleri
| Tür: | Job[] |
| Default value: | None |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
JobParameterSet
| Position: | 0 |
| Zorunlu: | True |
| İşlem hattından gelen değer: | True |
| Ö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 |
-Name
Yalnızca belirtilen kolay ada sahip işleri siler. Joker karakterlere izin verilir. Virgülle ayrılmış bir dizi girebilirsiniz.
Görevlerin kullanıcı dostu isimlerinin, bir PowerShell oturumunda bile benzersiz olması güvence altına alınmamıştır. Dosyaları ada göre sildiğinizde WhatIf ve Confirm parametrelerini kullanın.
Parametre özellikleri
| Tür: | String[] |
| Default value: | None |
| Joker karakterleri destekler: | True |
| DontShow: | False |
Parametre kümeleri
NameParameterSet
| 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 |
-State
Yalnızca belirtilen duruma sahip işleri siler. Çalışıyordurumuna sahip işleri silmek için Zorla parametresini kullanın.
Kabul edilen değerler:
- AtBreakpoint
- Bloklandı
- Tamamlandı
- Bağlantısı kesilmiş
- Başarısız oldu
- Henüz Başlamadı
- Koşmak
- Durduruldu
- Durdurma
- Askıya alındı
- Askıya alma
Parametre özellikleri
| Tür: | JobState |
| Default value: | None |
| Kabul edilen değerler: | AtBreakpoint, Blocked, Completed, Disconnected, Failed, NotStarted, Running, Stopped, Stopping, Suspended, Suspending |
| Joker karakterleri destekler: | False |
| DontShow: | False |
Parametre kümeleri
StateParameterSet
| 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 |
-WhatIf
Remove-Job çalıştırıldığında ne olacağını gösterir. Cmdlet çalıştırılmıyor.
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
Job
Bir İş nesnesini bu cmdlet'e yöneltebilirsiniz.
Çıkışlar
None
Bu cmdlet çıkış döndürmez.
Notlar
PowerShell, Remove-Jobiçin aşağıdaki diğer adları içerir:
- Tüm platformlar:
rjb
PowerShell işi yeni bir süreç oluşturur. İş tamamlandığında, işlem sona erer.
Remove-Job çalıştırıldığında işin durumu silinir.
Bir iş tamamlanmadan önce durursa ve işlemi henüz sonlanmamışsa, işlem zorla sonlandırılır.