Remove-Job
Töröl egy PowerShell-háttérfeladatot.
Syntax
SessionIdParameterSet (Alapértelmezett)
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
A Remove-Job parancsmag törli azokat a PowerShell-háttérfeladatokat, amelyeket a Start-Job parancsmag vagy az olyan parancsmagok indítottak, amelyek támogatják a Invoke-Command paramétert, mint például a .
A Remove-Job használatával törölheti az összes feladatot, vagy törölheti a kijelölt feladatokat. A feladatokat a Név, Azonosító, InstanceId, Parancsvagy Állapotazonosítja. Vagy egy feladatobjektum elküldhető a csővezetéken keresztül a Remove-Job-ra. Paraméterek és paraméterértékek nélkül Remove-Job nincs hatása.
A PowerShell 3.0 óta Remove-Job törölheti az egyéni feladattípusokat, például az ütemezett feladatokat és a munkafolyamat-feladatokat. Például Remove-Job törli az ütemezett feladatot, az ütemezett feladat összes példányát a lemezen, valamint az összes aktivált feladatpéldány eredményét.
Ha egy futó feladatot próbál törölni, Remove-Job sikertelen lesz. A futó feladat leállításához használja a Stop-Job parancsmagot. Vagy használja a Remove-Job az Erő paraméterrel egy futó feladat törléséhez.
A feladatok a globális feladat gyorsítótárában maradnak, amíg el nem törli a háttérfeladatot, vagy be nem zárja a PowerShell-munkamenetet.
Példák
1. példa: Feladat törlése a neve alapján
Ez a példa egy változót és egy folyamatot használ egy feladat név szerinti törléséhez.
$batch = Get-Job -Name BatchJob
$batch | Remove-Job
Get-Job a Name paramétert használja a feladat megadásához, BatchJob. A feladatobjektum a $batch változóban van tárolva. A $batch objektumot a rendszer elküldi a csővezetéken a Remove-Job-be.
Másik lehetőségként használhatja a Feladat paramétert, például Remove-Job -Job $batch.
2. példa: Munkamenet összes feladatának törlése
Ebben a példában az aktuális PowerShell-munkamenet összes feladatát törli a rendszer.
Get-Job | Remove-Job
Get-Job megkapja az aktuális PowerShell-munkamenet összes feladatát. A feladatobjektumokat a csővezetéken küldik le Remove-Job-ra.
3. példa: NotStarted feladatok törlése
Ez a példa törli az összes olyan feladatot az aktuális PowerShell-munkamenetből, amely még nem indult el.
Remove-Job -State NotStarted
Remove-Job a feladat állapotának megadásához a State paramétert használja.
4. példa: Feladatok törlése felhasználóbarát névvel
Ez a példa törli az aktuális munkamenet minden olyan feladatát, amelynek barátságos neve kötegvégződik, beleértve a futó feladatokat is.
Remove-Job -Name *batch -Force
Remove-Job a Név paraméterrel adja meg a feladatnévmintát. A minta tartalmazza a csillag (*) helyettesítő karaktert (*), hogy megtalálja az összes olyan feladatnevet, amely tételvégződik. A Force paraméter törli a futó feladatokat.
5. példa: A Invoke-Command által létrehozott feladat törlése
Ez a példa eltávolít egy feladatot, amelyet távoli számítógépen indítottak a Invoke-Command használatával a AsJob paraméterrel.
Mivel a példa az AsJob paramétert használja, a feladatobjektum a helyi számítógépen jön létre. A feladat azonban távoli számítógépen fut. Ennek eredményeképpen helyi parancsokkal kezelheti a feladatot.
$job = Invoke-Command -ComputerName Server01 -ScriptBlock {Get-Process} -AsJob
$job | Remove-Job
Invoke-Command egy feladatot futtat a Server01 számítógépen. Az AsJob paraméter háttérfeladatként futtatja a ScriptBlock. A feladatobjektum a $job változóban van tárolva. A $job változóobjektumot a folyamaton keresztül továbbítják a Remove-Job.
6. példa: A Invoke-Command és Start-Job által létrehozott feladat törlése
Ez a példa bemutatja, hogyan távolíthat el egy feladatot egy távoli számítógépen, amely Invoke-Command használatával indult el Start-Jobfuttatásával. A feladatobjektum a távoli számítógépen jön létre, a távoli parancsok pedig a feladat kezelésére szolgálnak. Távoli Start-Job parancs futtatásakor állandó kapcsolat szükséges.
$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 létrehoz egy PSSession, egy állandó kapcsolatot a Server01 számítógéphez. A kapcsolat a $S változóban lesz mentve.
Invoke-Command
$Smentett munkamenethez csatlakozik. A ScriptBlockStart-Job használ távoli feladat indításához. A feladat egy Get-Process parancsot futtat, és a Név paraméterrel egy rövid feladatnevet ad meg, MyJob.
Invoke-Command a $S munkamenetet használja, és Remove-Jobfuttat. A Név paraméter azt határozza meg, hogy a MyJob nevű feladat törlődik.
7. példa: Feladat törlése az InstanceId használatával
Ez a példa eltávolít egy feladatot a InstanceIdalapján.
$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 elindít egy háttérfeladatot, és a feladatobjektum a $job változóba lesz mentve.
A $job objektumot a rendszer elküldi a csővezetéken a Format-List-be. A tulajdonság paraméter egy csillagot (*) használ annak megadásához, hogy az objektum összes tulajdonsága megjelenjen egy listában.
Remove-Job a InstanceId paraméter használatával adja meg a törölni kívánt feladatot.
Paraméterek
-Command
Törli a parancsban megadott szavakat tartalmazó feladatokat. Vesszővel tagolt tömböt is megadhat.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
CommandParameterSet
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-Confirm
Megerősítést kér tőled, mielőtt a Remove-Job futtatásra kerül.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | Cf |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Filter
Törli a társított kivonattáblában megállapított összes feltételnek megfelelő feladatokat. Adjon meg egy kivonattáblát, amelyben a kulcsok feladattulajdonságok, az értékek pedig a feladattulajdonságok értékei.
Ez a paraméter csak egyéni feladattípusokon, például munkafolyamat-feladatokon és ütemezett feladatokon működik. Nem működik szabványos háttérfeladatokon, például a Start-Jobhasználatával létrehozott feladatokon.
Ezt a paramétert a PowerShell 3.0-ban vezettük be.
Paramétertulajdonságok
| Típus: | Hashtable |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
FilterParameterSet
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-Force
Akkor is töröl egy feladatot, ha a feladat állapota Fut. Ha a Force paraméter nincs megadva, Remove-Job nem törli a futó feladatokat.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | F |
Paraméterkészletek
SessionIdParameterSet
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
JobParameterSet
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
InstanceIdParameterSet
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
NameParameterSet
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
FilterParameterSet
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
-Id
Törli a megadott azonosítóval rendelkező háttérfeladatokat. Megadhat egy vesszővel elválasztott tömböt is. A feladat azonosítója egy egyedi egész szám, amely azonosít egy feladatot az aktuális munkameneten belül.
Egy feladat azonosítójánakmegkereséséhez használja a Get-Job paraméterek nélkül.
Paramétertulajdonságok
| Típus: | Int32[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
SessionIdParameterSet
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-InstanceId
Törli a meghatározott példányazonosítóállások. Vesszővel tagolt tömböt is megadhat. A InstanceId egy egyedi GUID, amely azonosít egy feladatot.
A munka InstanceIdmegkereséséhez használja a Get-Job.
Paramétertulajdonságok
| Típus: | Guid[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
InstanceIdParameterSet
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-Job
Megadja a törölni kívánt feladatokat. Adjon meg egy változót, amely tartalmazza a feladatokat vagy a feladatokat lekérő parancsot. Vesszővel tagolt tömböt is megadhat.
Feladatobjektumokat küldhet a folyamathoz a Remove-Job-n keresztül.
Paramétertulajdonságok
| Típus: | Job[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
JobParameterSet
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | True |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-Name
Csak a megadott barátságos névvel rendelkező feladatokat törli. Helyettesítő karakterek használata engedélyezett. Vesszővel tagolt tömböt is megadhat.
A feladatok barátságos nevei nem garantáltan egyediek, még a PowerShell-munkamenetben sem. Használja a WhatIf és a Megerősítés paramétereket, amikor fájlokat töröl név szerint.
Paramétertulajdonságok
| Típus: | String[] |
| Alapértelmezett érték: | None |
| Támogatja a helyettesítő karaktereket: | True |
| DontShow: | False |
Paraméterkészletek
NameParameterSet
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-State
Csak a megadott állapotú feladatokat törli. Ha futóállapotú feladatokat szeretne törölni, használja a Force paramétert.
Elfogadott értékek:
- AtBreakpoint
- Letiltott
- Befejeződött
- Szétkapcsolva
- Sikertelen
- Még nem kezdődött el
- Futás
- Megállt
- Megállás
- Felfüggesztett
- Felfüggesztéséről
Paramétertulajdonságok
| Típus: | JobState |
| Alapértelmezett érték: | None |
| Elfogadott értékek: | AtBreakpoint, Blocked, Completed, Disconnected, Failed, NotStarted, Running, Stopped, Stopping, Suspended, Suspending |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
Paraméterkészletek
StateParameterSet
| Position: | 0 |
| Kötelező: | True |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | True |
| Fennmaradó argumentumokból származó érték: | False |
-WhatIf
Megjeleníti, mi történne, ha Remove-Job futna. A parancsprogram nem lett futtatva.
Paramétertulajdonságok
| Típus: | SwitchParameter |
| Alapértelmezett érték: | False |
| Támogatja a helyettesítő karaktereket: | False |
| DontShow: | False |
| Aliasok: | Wi |
Paraméterkészletek
(All)
| Position: | Named |
| Kötelező: | False |
| Folyamatból származó érték: | False |
| Folyamatból származó érték tulajdonságnév alapján: | False |
| Fennmaradó argumentumokból származó érték: | False |
CommonParameters
Ez a parancsmag a következő gyakori paramétereket támogatja: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction és -WarningVariable. További információért lásd about_CommonParameters.
Bevitelek
Job
Erre a parancsmagra feladatobjektumot csövezhet.
Kimenetek
None
Ez a parancsmag nem ad vissza kimenetet.
Jegyzetek
A PowerShell a következő aliasokat tartalmazza Remove-Job:
- Minden platform:
rjb
Egy PowerShell-feladat új folyamatot hoz létre. Amikor a feladat befejeződik, a folyamat befejeződik. A Remove-Job futtatásakor a feladat állapota eltűnik.
Ha egy feladat a befejezés előtt leáll, és a folyamat nem szűnik meg, a folyamat kényszerítetten leáll.