Get-Job
Pobiera zadania w tle programu PowerShell uruchomione w bieżącej sesji.
Składnia
Get-Job
[-IncludeChildJob]
[-ChildJobState <JobState>]
[-HasMoreData <Boolean>]
[-Before <DateTime>]
[-After <DateTime>]
[-Newest <Int32>]
[[-Id] <Int32[]>]
[<CommonParameters>]
Get-Job
[-IncludeChildJob]
[-ChildJobState <JobState>]
[-HasMoreData <Boolean>]
[-Before <DateTime>]
[-After <DateTime>]
[-Newest <Int32>]
[-Command <String[]>]
[<CommonParameters>]
Get-Job
[-IncludeChildJob]
[-ChildJobState <JobState>]
[-HasMoreData <Boolean>]
[-Before <DateTime>]
[-After <DateTime>]
[-Newest <Int32>]
[-InstanceId] <Guid[]>
[<CommonParameters>]
Get-Job
[-IncludeChildJob]
[-ChildJobState <JobState>]
[-HasMoreData <Boolean>]
[-Before <DateTime>]
[-After <DateTime>]
[-Newest <Int32>]
[-Name] <String[]>
[<CommonParameters>]
Get-Job
[-IncludeChildJob]
[-ChildJobState <JobState>]
[-HasMoreData <Boolean>]
[-Before <DateTime>]
[-After <DateTime>]
[-Newest <Int32>]
[-State] <JobState>
[<CommonParameters>]
Get-Job
[-Filter] <Hashtable>
[<CommonParameters>]
Opis
Polecenie Get-Job
cmdlet pobiera obiekty reprezentujące zadania w tle, które zostały uruchomione w bieżącej sesji. Możesz użyć Get-Job
polecenia , aby pobrać zadania, które zostały uruchomione przy użyciu polecenia cmdlet lub za pomocą parametru Start-Job
AsJob dowolnego polecenia cmdlet.
Bez parametrów Get-Job
polecenie pobiera wszystkie zadania w bieżącej sesji. Możesz użyć parametrów polecenia Get-Job
, aby uzyskać określone zadania.
Obiekt zadania, który Get-Job
zwraca, zawiera przydatne informacje o zadaniu, ale nie zawiera wyników zadania. Aby uzyskać wyniki, użyj Receive-Job
polecenia cmdlet .
Zadanie w tle programu Windows PowerShell to polecenie uruchamiane w tle bez interakcji z bieżącą sesją. Zazwyczaj zadanie w tle służy do uruchamiania złożonego polecenia, które trwa długo. Aby uzyskać więcej informacji na temat zadań w tle w programie Windows PowerShell, zobacz about_Jobs.
Począwszy od programu Windows PowerShell 3.0, Get-Job
polecenie cmdlet pobiera również niestandardowe typy zadań, takie jak zadania przepływu pracy i wystąpienia zaplanowanych zadań. Aby znaleźć typ zadania, użyj właściwości PSJobTypeName zadania.
Aby włączyć Get-Job
pobieranie niestandardowego typu zadania, zaimportuj moduł obsługujący niestandardowy typ zadania do sesji przed uruchomieniem Get-Job
polecenia za pomocą polecenia cmdlet lub przy użyciu Import-Module
polecenia cmdlet lub pobierania polecenia cmdlet w module. Aby uzyskać informacje na temat określonego niestandardowego typu zadania, zobacz dokumentację funkcji niestandardowego typu zadania.
Przykłady
Przykład 1. Pobieranie wszystkich zadań w tle uruchomionych w bieżącej sesji
To polecenie pobiera wszystkie zadania w tle uruchomione w bieżącej sesji. Nie obejmuje zadań utworzonych w innych sesjach, nawet jeśli zadania są uruchamiane na komputerze lokalnym.
Get-Job
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
1 Job1 BackgroundJob Completed True localhost $env:COMPUTERNAME
Przykład 2. Zatrzymywanie zadania przy użyciu identyfikatora wystąpienia
Te polecenia pokazują, jak uzyskać identyfikator wystąpienia zadania, a następnie użyć go do zatrzymania zadania. W przeciwieństwie do nazwy zadania, które nie jest unikatowe, identyfikator wystąpienia jest unikatowy.
Pierwsze polecenie używa Get-Job
polecenia cmdlet do pobrania zadania. Używa parametru Name do identyfikowania zadania. Polecenie przechowuje obiekt zadania zwracany Get-Job
w zmiennej $j
. W tym przykładzie istnieje tylko jedno zadanie o określonej nazwie. Drugie polecenie pobiera właściwość InstanceId obiektu w zmiennej $j
i przechowuje ją w zmiennej $ID
. Trzecie polecenie wyświetla wartość zmiennej $ID
. Czwarte polecenie używa Stop-Job
polecenia cmdlet, aby zatrzymać zadanie.
Używa parametru InstanceId do identyfikowania zadania i $ID
zmiennej do reprezentowania identyfikatora wystąpienia zadania.
$j = Get-Job -Name Job1
$ID = $j.InstanceID
$ID
Guid
----
03c3232e-1d23-453b-a6f4-ed73c9e29d55
Stop-Job -InstanceId $ID
Przykład 3. Pobieranie zadań zawierających określone polecenie
To polecenie pobiera zadania w systemie, które zawierają Get-Process
polecenie. Polecenie używa parametru Command polecenia , Get-Job
aby ograniczyć pobrane zadania. Polecenie używa symboli wieloznacznych (*
) do pobierania zadań zawierających Get-Process
polecenie w dowolnym miejscu w ciągu polecenia.
Get-Job -Command "*Get-Process*"
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
3 Job3 BackgroundJob Running True localhost Get-Process
Przykład 4. Pobieranie zadań zawierających określone polecenie przy użyciu potoku
Podobnie jak polecenie w poprzednim przykładzie, to polecenie pobiera zadania w systemie, które zawierają Get-Process
polecenie. Polecenie używa operatora potoku (|
) do wysłania obiektu PSCustomObject za pomocą polecenia NoteProperty do Get-Job
polecenia cmdlet. Jest to odpowiednik poprzedniego polecenia.
[pscustomobject]@{Command='*Get-Process*'} | Get-Job
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
3 Job3 BackgroundJob Running True localhost Get-Process
Przykład 5. Pobieranie zadań, które nie zostały uruchomione
To polecenie pobiera tylko te zadania, które zostały utworzone, ale nie zostały jeszcze uruchomione. Obejmuje to zadania, które mają być uruchamiane w przyszłości, a nie zostały jeszcze zaplanowane.
Get-Job -State NotStarted
Przykład 6. Pobieranie zadań, które nie zostały przypisane do nazwy
To polecenie pobiera wszystkie zadania, które mają nazwy zadań rozpoczynających się od zadania. Ponieważ job<number>
jest to domyślna nazwa zadania, to polecenie pobiera wszystkie zadania, które nie mają jawnie przypisanej nazwy.
Get-Job -Name Job*
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
1 Job1 BackgroundJob Completed True localhost $env:COMPUTERNAME
Przykład 7. Używanie obiektu zadania do reprezentowania zadania w poleceniu
W tym przykładzie pokazano, jak Get-Job
uzyskać obiekt zadania, a następnie pokazano, jak używać obiektu zadania do reprezentowania zadania w poleceniu.
Pierwsze polecenie używa Start-Job
polecenia cmdlet do uruchomienia zadania w tle, które uruchamia Get-Process
polecenie na komputerze lokalnym. Polecenie używa parametru Name polecenia , Start-Job
aby przypisać przyjazną nazwę do zadania. Drugie polecenie używa Get-Job
polecenia do pobrania zadania. Używa parametru Name parametru , Get-Job
aby zidentyfikować zadanie. Polecenie zapisuje wynikowy obiekt zadania w zmiennej $j
. Trzecie polecenie wyświetla wartość obiektu zadania w zmiennej $j
. Wartość właściwości State pokazuje, że zadanie zostało ukończone. Wartość właściwości HasMoreData pokazuje, że są dostępne wyniki z zadania, które nie zostały jeszcze pobrane. Czwarte polecenie używa Receive-Job
polecenia cmdlet , aby uzyskać wyniki zadania. Używa obiektu zadania w zmiennej $j
do reprezentowania zadania. Możesz również użyć operatora potoku, aby wysłać obiekt zadania do Receive-Job
.
Start-Job -ScriptBlock {Get-Process} -Name MyJob
$j = Get-Job -Name MyJob
$j
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
6 MyJob BackgroundJob Completed True localhost Get-Process
Receive-Job -Job $j
Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName
------- ------ ----- ----- ----- ------ -- -----------
124 4 13572 12080 59 1140 audiodg
783 16 11428 13636 100 548 CcmExec
96 4 4252 3764 59 3856 ccmsetup
...
Przykład 8. Pobieranie wszystkich zadań, w tym zadań uruchomionych przez inną metodę
W tym przykładzie pokazano, że Get-Job
polecenie cmdlet może pobrać wszystkie zadania, które zostały uruchomione w bieżącej sesji, nawet jeśli zostały uruchomione przy użyciu różnych metod.
Pierwsze polecenie używa Start-Job
polecenia cmdlet do uruchomienia zadania na komputerze lokalnym. Drugie polecenie używa parametru Invoke-Command
AsJob polecenia cmdlet, aby uruchomić zadanie na komputerze S1. Mimo że polecenia w zadaniu są uruchamiane na komputerze zdalnym, obiekt zadania jest tworzony na komputerze lokalnym, aby zarządzać zadaniem za pomocą poleceń lokalnych. Trzecie polecenie używa Invoke-Command
polecenia cmdlet do uruchomienia Start-Job
polecenia na komputerze S2. Za pomocą tej metody obiekt zadania jest tworzony na komputerze zdalnym, więc do zarządzania zadaniem służy zdalne polecenia. Czwarte polecenie używa Get-Job
polecenia do pobierania zadań przechowywanych na komputerze lokalnym. Właściwość PSJobTypeName zadań, wprowadzona w programie Windows PowerShell 3.0, pokazuje, że zadanie lokalne uruchomione przy użyciu Start-Job
polecenia cmdlet jest zadaniem w tle, a zadanie uruchomione w sesji zdalnej przy użyciu Invoke-Command
polecenia cmdlet jest zadaniem zdalnym. Piąte, szóste i siódme polecenie używa New-PSSession
polecenia cmdlet do utworzenia psSession, który jest połączony z komputerem S2, używa Invoke-Command
go do uruchamiania zadania na komputerze zdalnym przy użyciu PSSession i parametru Sesja . Następnie pobiera zadanie przy użyciu Get-Job
polecenia na komputerze S2 przy użyciu programu PSSession.
Przykładowe dane wyjściowe pokazują wyniki Get-Job
polecenia. Na komputerze S2 zadanie wydaje się być zadaniem lokalnym. Nazwa komputera to localhost, a typ zadania to zadanie w tle.
Aby uzyskać więcej informacji na temat uruchamiania zadań w tle na komputerach zdalnych, zobacz about_Remote_Jobs.
Start-Job -ScriptBlock {Get-EventLog -LogName System}
Invoke-Command -ComputerName S1 -ScriptBlock {Get-EventLog -LogName System} -AsJob
Invoke-Command -ComputerName S2 -ScriptBlock {Start-Job -ScriptBlock {Get-EventLog -LogName System}}
Get-Job
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
1 Job1 BackgroundJob Running True localhost Get-EventLog System
2 Job2 RemoteJob Running True S1 Get-EventLog System
$Session = New-PSSession -ComputerName S2
Invoke-Command -Session $Session -ScriptBlock {Start-Job -ScriptBlock {Get-EventLog -LogName System}}
Invoke-Command -Session $Session -ScriptBlock {Get-Job}
Id Name PSJobTypeName State HasMoreData Location Command PSComputerName
-- ---- ------------- ----- ----------- -------- ------- --------------
1 Job1 BackgroundJob Running True localhost Get-EventLog -LogName Sy… S2
Przykład 9. Badanie zadania, które zakończyło się niepowodzeniem
To polecenie pokazuje, jak używać obiektu zadania, który Get-Job
powraca, aby zbadać, dlaczego zadanie nie powiodło się.
Pokazuje również, jak uzyskać podrzędne zadania poszczególnych zadań.
Pierwsze polecenie używa Start-Job
polecenia cmdlet do uruchomienia zadania na komputerze lokalnym. Obiekt zadania, który Start-Job
zwraca, pokazuje, że zadanie nie powiodło się. Wartość właściwości State to Failed (Niepowodzenie).
Drugie polecenie używa Get-Job
polecenia cmdlet do pobrania zadania. Polecenie używa metody kropki, aby uzyskać wartość właściwości JobStateInfo obiektu. Używa operatora potoku do wysyłania obiektu we właściwości JobStateInfo do Format-List
polecenia cmdlet, które formatuje wszystkie właściwości obiektu (*
) na liście. Wynik Format-List
polecenia pokazuje, że wartość właściwości Reason zadania jest pusta.
Trzecie polecenie bada więcej. Używa Get-Job
polecenia , aby pobrać zadanie, a następnie używa operatora potoku do wysłania całego obiektu zadania do Format-List
polecenia cmdlet, które wyświetla wszystkie właściwości zadania na liście. Wyświetlanie wszystkich właściwości w obiekcie zadania pokazuje, że zadanie zawiera podrzędne zadanie o nazwie Job2.
Czwarte polecenie używa Get-Job
polecenia do pobrania obiektu zadania reprezentującego zadanie podrzędne Job2. Jest to zadanie, w którym polecenie rzeczywiście zostało uruchomione. Używa metody kropki, aby uzyskać właściwość Reason właściwości JobStateInfo . Wynik pokazuje, że zadanie nie powiodło się z powodu błędu Odmowy dostępu. W takim przypadku użytkownik zapomniał użyć opcji Uruchom jako administrator podczas uruchamiania programu Windows PowerShell.Ponieważ zadania w tle korzystają z funkcji komunikacji zdalnej programu Windows PowerShell, komputer musi być skonfigurowany do komunikacji zdalnej w celu uruchomienia zadania, nawet gdy zadanie jest uruchamiane na komputerze lokalnym. Aby uzyskać informacje o wymaganiach dotyczących komunikacji zdalnej w programie Windows PowerShell, zobacz about_Remote_Requirements. Aby uzyskać porady dotyczące rozwiązywania problemów, zobacz about_Remote_Troubleshooting.
PS> Start-Job -ScriptBlock {Get-Process}
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
1 Job1 BackgroundJob Failed False localhost Get-Process
PS> (Get-Job).JobStateInfo | Format-List -Property *
State : Failed
Reason :
PS> Get-Job | Format-List -Property *
HasMoreData : False
StatusMessage :
Location : localhost
Command : get-process
JobStateInfo : Failed
Finished : System.Threading.ManualReset
EventInstanceId : fb792295-1318-4f5d-8ac8-8a89c5261507
Id : 1
Name : Job1
ChildJobs : {Job2}
Output : {}
Error : {}
Progress : {}
Verbose : {}
Debug : {}
Warning : {}
StateChanged :
PS> (Get-Job -Name job2).JobStateInfo.Reason
Connecting to remote server using WSManCreateShellEx api failed. The async callback gave the
following error message: Access is denied.
Przykład 10: Pobieranie filtrowanych wyników
W tym przykładzie pokazano, jak za pomocą parametru Filter uzyskać zadanie przepływu pracy. Parametr Filter wprowadzony w programie Windows PowerShell 3.0 jest prawidłowy tylko w przypadku niestandardowych typów zadań, takich jak zadania przepływu pracy i zaplanowane zadania.
Pierwsze polecenie używa słowa kluczowego Workflow do utworzenia przepływu pracy WFProcess. Drugie polecenie używa parametru AsJob przepływu pracy WFProcess do uruchamiania przepływu pracy jako zadania w tle. Używa parametru JobName przepływu pracy do określenia nazwy zadania i parametru PSPrivateMetadata przepływu pracy w celu określenia niestandardowego identyfikatora. Trzecie polecenie używa parametru Filter polecenia Get-Job
, aby pobrać zadanie według identyfikatora niestandardowego określonego w parametrze PSPrivateMetadata .
PS> Workflow WFProcess {Get-Process}
PS> WFProcess -AsJob -JobName WFProcessJob -PSPrivateMetadata @{MyCustomId = 92107}
PS> Get-Job -Filter @{MyCustomId = 92107}
Id Name State HasMoreData Location Command
-- ---- ----- ----------- -------- -------
1 WFProcessJob Completed True localhost WFProcess
Przykład 11: Uzyskiwanie informacji o zadaniach podrzędnych
W tym przykładzie pokazano efekt użycia parametrów Get-Job
IncludeChildJob i ChildJobState polecenia cmdlet.
Pierwsze polecenie pobiera zadania w bieżącej sesji. Dane wyjściowe obejmują zadanie w tle, zadanie zdalne i kilka wystąpień zaplanowanego zadania. Zadanie zdalne, Job4, wydaje się, że nie powiodło się.
Drugie polecenie używa parametru IncludeChildJob polecenia Get-Job
. Dane wyjściowe dodają zadania podrzędne wszystkich zadań, które mają zadania podrzędne. W takim przypadku poprawione dane wyjściowe pokazują, że zadanie podrzędne Job5 job4 nie powiodło się. Trzecie polecenie używa parametru ChildJobState z wartością Failed.Dane wyjściowe zawierają wszystkie zadania nadrzędne i tylko zadania podrzędne, które zakończyły się niepowodzeniem. Piąte polecenie używa właściwości JobStateInfo zadań i jej właściwości Reason , aby dowiedzieć się, dlaczego job5 nie powiodło się.
PS> Get-Job
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
2 Job2 BackgroundJob Completed True localhost .\Get-Archive.ps1
4 Job4 RemoteJob Failed True Server01, Server02 .\Get-Archive.ps1
7 UpdateHelpJob PSScheduledJob Completed True localhost Update-Help
8 UpdateHelpJob PSScheduledJob Completed True localhost Update-Help
9 UpdateHelpJob PSScheduledJob Completed True localhost Update-Help
10 UpdateHelpJob PSScheduledJob Completed True localhost Update-Help
PS> Get-Job -IncludeChildJob
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
2 Job2 BackgroundJob Completed True localhost .\Get-Archive.ps1
3 Job3 Completed True localhost .\Get-Archive.ps1
4 Job4 RemoteJob Failed True Server01, Server02 .\Get-Archive.ps1
5 Job5 Failed False Server01 .\Get-Archive.ps1
6 Job6 Completed True Server02 .\Get-Archive.ps1
7 UpdateHelpJob PSScheduledJob Completed True localhost Update-Help
8 UpdateHelpJob PSScheduledJob Completed True localhost Update-Help
9 UpdateHelpJob PSScheduledJob Completed True localhost Update-Help
10 UpdateHelpJob PSScheduledJob Completed True localhost Update-Help
PS> Get-Job -Name Job4 -ChildJobState Failed
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
2 Job2 BackgroundJob Completed True localhost .\Get-Archive.ps1
4 Job4 RemoteJob Failed True Server01, Server02 .\Get-Archive.ps1
5 Job5 Failed False Server01 .\Get-Archive.ps1
7 UpdateHelpJob PSScheduledJob Completed True localhost Update-Help
8 UpdateHelpJob PSScheduledJob Completed True localhost Update-Help
9 UpdateHelpJob PSScheduledJob Completed True localhost Update-Help
10 UpdateHelpJob PSScheduledJob Completed True localhost Update-Help
PS> (Get-Job -Name Job5).JobStateInfo.Reason
Connecting to remote server Server01 failed with the following error message:
Access is denied.
Aby uzyskać więcej informacji, zobacz temat pomocy about_Remote_Troubleshooting .
Parametry
-After
Pobiera ukończone zadania, które zakończyły się po określonej dacie i godzinie. Wprowadź obiekt DateTime, taki jak jeden zwrócony przez Get-Date
polecenie cmdlet lub ciąg, który można przekonwertować na obiekt DateTime, taki jak Dec 1, 2012 2:00 AM
lub 11/06
.
Ten parametr działa tylko w przypadku niestandardowych typów zadań, takich jak zadania przepływu pracy i zaplanowane zadania, które mają właściwość EndTime . Nie działa w przypadku standardowych zadań w tle, takich jak te utworzone przy użyciu Start-Job
polecenia cmdlet . Aby uzyskać informacje o obsłudze tego parametru, zobacz temat pomocy dla typu zadania.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | DateTime |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Before
Pobiera ukończone zadania, które zakończyły się przed określoną datą i godziną. Wprowadź obiekt DateTime.
Ten parametr działa tylko w przypadku niestandardowych typów zadań, takich jak zadania przepływu pracy i zaplanowane zadania, które mają właściwość EndTime . Nie działa w przypadku standardowych zadań w tle, takich jak te utworzone przy użyciu Start-Job
polecenia cmdlet . Aby uzyskać informacje o obsłudze tego parametru, zobacz temat pomocy dla typu zadania.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | DateTime |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ChildJobState
Pobiera tylko zadania podrzędne, które mają określony stan. Dopuszczalne wartości tego parametru to:
- Nierozpoczęte
- Uruchomiono
- Ukończone
- Niepowodzenie
- Zatrzymana
- Zablokowano
- Suspended
- Odłączony
- Zawieszanie
- Zatrzymywanie
Domyślnie Get-Job
nie pobiera zadań podrzędnych. Za pomocą parametru Get-Job
IncludeChildJob pobiera wszystkie zadania podrzędne. Jeśli używasz parametru ChildJobState , parametr IncludeChildJob nie ma efektu.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | JobState |
Dopuszczalne wartości: | NotStarted, Running, Completed, Failed, Stopped, Blocked, Suspended, Disconnected, Suspending, Stopping, AtBreakpoint |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Command
Określa tablicę poleceń jako ciągi. To polecenie cmdlet pobiera zadania zawierające określone polecenia. Wartość domyślna to wszystkie zadania. Możesz użyć symboli wieloznacznych, aby określić wzorzec polecenia.
Typ: | String[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | True |
-Filter
Określa tabelę skrótów warunków. To polecenie cmdlet pobiera zadania spełniające wszystkie warunki. Wprowadź tabelę skrótów, w której klucze są właściwościami zadania, a wartości są wartościami właściwości zadania.
Ten parametr działa tylko w przypadku niestandardowych typów zadań, takich jak zadania przepływu pracy i zaplanowane zadania. Nie działa w przypadku standardowych zadań w tle, takich jak te utworzone przy użyciu Start-Job
polecenia cmdlet . Aby uzyskać informacje o obsłudze tego parametru, zobacz temat pomocy dla typu zadania.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | Hashtable |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-HasMoreData
Wskazuje, czy to polecenie cmdlet pobiera tylko zadania, które mają określoną wartość właściwości HasMoreData .
Właściwość HasMoreData wskazuje, czy wszystkie wyniki zadania zostały odebrane w bieżącej sesji. Aby uzyskać zadania, które mają więcej wyników, określ wartość $True
. Aby uzyskać zadania, które nie mają większej $False
liczby wyników, określ wartość .
Aby uzyskać wyniki zadania, użyj Receive-Job
polecenia cmdlet .
Gdy używasz Receive-Job
polecenia cmdlet, usuwa on z magazynu w pamięci specyficznego dla sesji wyniki, które zostały zwrócone. Gdy zwraca wszystkie wyniki zadania w bieżącej sesji, ustawia wartość właściwości HasMoreData zadania na $False
wartość ), aby wskazać, że nie ma więcej wyników dla zadania w bieżącej sesji. Użyj parametru Keep polecenia , Receive-Job
aby zapobiec Receive-Job
usuwaniu wyników i zmienianiu wartości właściwości HasMoreData.
Aby uzyskać więcej informacji, wpisz Get-Help Receive-Job
.
Właściwość HasMoreData jest specyficzna dla bieżącej sesji. Jeśli wyniki niestandardowego typu zadania są zapisywane poza sesją, takie jak typ zaplanowanego zadania, który zapisuje wyniki zadania na dysku, możesz użyć Receive-Job
polecenia cmdlet w innej sesji, aby ponownie uzyskać wyniki zadania, nawet jeśli wartość HasMoreData to $False
. Aby uzyskać więcej informacji, zobacz tematy pomocy dotyczące niestandardowego typu zadania.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | Boolean |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Id
Określa tablicę identyfikatorów zadań pobieranych przez to polecenie cmdlet.
Identyfikator jest liczbą całkowitą, która jednoznacznie identyfikuje zadanie w bieżącej sesji. Łatwiej jest zapamiętać identyfikator wystąpienia i wpisać go, ale jest on unikatowy tylko w bieżącej sesji. Można wpisać jeden lub więcej identyfikatorów rozdzielonych przecinkami. Aby znaleźć identyfikator zadania, wpisz Get-Job
bez parametrów.
Typ: | Int32[] |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-IncludeChildJob
Wskazuje, że to polecenie cmdlet zwraca zadania podrzędne oprócz zadań nadrzędnych.
Ten parametr jest szczególnie przydatny do badania zadań przepływu pracy, dla których Get-Job
zwraca zadanie nadrzędne kontenera i niepowodzenia zadania, ponieważ przyczyna niepowodzenia jest zapisywana we właściwości zadania podrzędnego.
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-InstanceId
Określa tablicę identyfikatorów wystąpień zadań pobieranych przez to polecenie cmdlet. Wartość domyślna to wszystkie zadania.
Identyfikator wystąpienia to identyfikator GUID, który jednoznacznie identyfikuje zadanie na komputerze. Aby znaleźć identyfikator wystąpienia zadania, użyj polecenia Get-Job
.
Typ: | Guid[] |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Name
Określa tablicę przyjaznych nazw wystąpień zadań pobieranych przez to polecenie cmdlet. Wprowadź nazwę zadania lub użyj symboli wieloznacznych, aby wprowadzić wzorzec nazwy zadania. Domyślnie Get-Job
pobiera wszystkie zadania w bieżącej sesji.
Typ: | String[] |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | True |
-Newest
Określa liczbę zadań do pobrania. To polecenie cmdlet pobiera ostatnio zakończone zadania.
Najnowszy parametr nie sortuje ani nie zwraca najnowszych zadań w kolejności zakończenia. Aby posortować dane wyjściowe, użyj Sort-Object
polecenia cmdlet .
Ten parametr został wprowadzony w programie Windows PowerShell 3.0.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-State
Określa stan zadania. To polecenie cmdlet pobiera tylko zadania w określonym stanie. Dopuszczalne wartości tego parametru to:
- Nierozpoczęte
- Uruchomiono
- Ukończone
- Niepowodzenie
- Zatrzymana
- Zablokowano
- Suspended
- Odłączony
- Zawieszanie
- Zatrzymywanie
Domyślnie Get-Job
pobiera wszystkie zadania w bieżącej sesji.
Aby uzyskać więcej informacji na temat stanów zadań, zobacz JobState, wyliczenie.
Typ: | JobState |
Dopuszczalne wartości: | NotStarted, Running, Completed, Failed, Stopped, Blocked, Suspended, Disconnected, Suspending, Stopping, AtBreakpoint |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
None
Nie można potokować obiektów do tego polecenia cmdlet.
Dane wyjściowe
System.Management.Automation.RemotingJob
To polecenie cmdlet zwraca obiekty reprezentujące zadania w sesji.
Uwagi
Program Windows PowerShell zawiera następujące aliasy dla programu Get-Job
:
gjb
Właściwość PSJobTypeName zadań wskazuje typ zadania. Wartość właściwości jest określana przez autora typu zadania. Na poniższej liście przedstawiono typowe typy zadań.
- BackgroundJob. Zadanie lokalne uruchomione przy użyciu polecenia
Start-Job
. - RemoteJob. Zadanie uruchomione w programie PSSession przy użyciu parametru
Invoke-Command
AsJob polecenia cmdlet. - PSWorkflowJob. Zadanie rozpoczęte przy użyciu wspólnego parametru asJob przepływów pracy.