Start-Job
Uruchamia zadanie w tle programu PowerShell.
Składnia
Start-Job
[-Name <String>]
[-ScriptBlock] <ScriptBlock>
[-Credential <PSCredential>]
[-Authentication <AuthenticationMechanism>]
[[-InitializationScript] <ScriptBlock>]
[-WorkingDirectory <String>]
[-RunAs32]
[-PSVersion <Version>]
[-InputObject <PSObject>]
[-ArgumentList <Object[]>]
[<CommonParameters>]
Start-Job
[-DefinitionName] <String>
[[-DefinitionPath] <String>]
[[-Type] <String>]
[-WorkingDirectory <String>]
[<CommonParameters>]
Start-Job
[-Name <String>]
[-Credential <PSCredential>]
[-FilePath] <String>
[-Authentication <AuthenticationMechanism>]
[[-InitializationScript] <ScriptBlock>]
[-WorkingDirectory <String>]
[-RunAs32]
[-PSVersion <Version>]
[-InputObject <PSObject>]
[-ArgumentList <Object[]>]
[<CommonParameters>]
Start-Job
[-Name <String>]
[-Credential <PSCredential>]
-LiteralPath <String>
[-Authentication <AuthenticationMechanism>]
[[-InitializationScript] <ScriptBlock>]
[-WorkingDirectory <String>]
[-RunAs32]
[-PSVersion <Version>]
[-InputObject <PSObject>]
[-ArgumentList <Object[]>]
[<CommonParameters>]
Opis
Polecenie cmdlet Start-Job
uruchamia zadanie w tle programu PowerShell na komputerze lokalnym.
Zadanie w tle programu PowerShell uruchamia polecenie bez interakcji z bieżącą sesją. Po uruchomieniu zadania w tle obiekt zadania jest zwracany natychmiast, nawet jeśli zadanie zajmuje dłuższy czas. Możesz kontynuować pracę w sesji bez przerwy, podczas gdy zadanie jest wykonywane.
Obiekt zadania zawiera przydatne informacje o zadaniu, ale nie zawiera wyników zadania.
Po zakończeniu zadania użyj polecenia cmdlet Receive-Job
, aby uzyskać wyniki zadania. Aby uzyskać więcej informacji na temat zadań w tle, zobacz about_Jobs.
Aby uruchomić zadanie w tle na komputerze zdalnym, użyj parametru AsJob dostępnego w wielu poleceniach cmdlet lub użyj polecenia cmdlet Invoke-Command
, aby uruchomić polecenie Start-Job
na komputerze zdalnym. Aby uzyskać więcej informacji, zobacz about_Remote_Jobs.
Począwszy od programu PowerShell 3.0, Start-Job
może uruchamiać wystąpienia niestandardowych typów zadań, takich jak zaplanowane zadania. Aby uzyskać informacje o sposobie uruchamiania zadań z typami niestandardowymi za pomocą Start-Job
, odnieś się do dokumentacji pomocy dotyczącej funkcji typu zadania.
Począwszy od programu PowerShell 6.0, można uruchamiać zadania przy użyciu operatora tła ampersand (&
). Funkcja operatora w tle jest podobna do Start-Job
. Obie metody uruchamiania zadania tworzą obiekt zadania PSRemotingJob. Aby uzyskać więcej informacji na temat korzystania z ampersand (&
), zobacz about_Operators.
Program PowerShell 7 wprowadził parametr WorkingDirectory, określający katalog roboczy początkowy zadania w tle. Jeśli parametr nie zostanie określony, Start-Job
domyślnie wskazuje na bieżący katalog roboczy obiektu wywołującego, który uruchomił zadanie.
Notatka
Tworzenie zadania w tle poza procesem z Start-Job
nie jest obsługiwane w scenariuszu, w którym program PowerShell jest hostowany w innych aplikacjach, takich jak program PowerShell Azure Functions.
Jest to celowe, ponieważ Start-Job
zależy od pwsh
pliku wykonywalnego, który ma być dostępny w $PSHOME
, aby uruchomić zadanie w tle poza procesem, ale gdy aplikacja hostuje program PowerShell, jest ona bezpośrednio używana przy użyciu pakietów zestawu SDK NuGet programu PowerShell i nie będzie pwsh
dostarczana razem.
Zamiennik w tym scenariuszu to Start-ThreadJob
z modułu ThreadJob.
Przykłady
Przykład 1. Uruchamianie zadania w tle
W tym przykładzie uruchamia się zadanie w tle uruchamiane na komputerze lokalnym.
Start-Job -ScriptBlock { Get-Process -Name pwsh }
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
1 Job1 BackgroundJob Running True localhost Get-Process -Name pwsh
Start-Job
używa parametru ScriptBlock do uruchamiania Get-Process
jako zadania w tle. Parametr Nazwa służy do znalezienia procesów programu PowerShell pwsh
. Informacje o zadaniu zostaną wyświetlone, a program PowerShell powróci do monitu, podczas gdy zadanie będzie działać w tle.
Aby wyświetlić dane wyjściowe zadania, użyj polecenia cmdlet Receive-Job
. Na przykład Receive-Job -Id 1
.
Przykład 2. Uruchamianie zadania w tle przy użyciu operatora w tle
W tym przykładzie użyto operatora ampersand (&
) do rozpoczęcia zadania w tle na komputerze lokalnym. Zadanie osiąga ten sam wynik co Start-Job
w Przykładzie 1.
Get-Process -Name pwsh &
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
5 Job5 BackgroundJob Running True localhost Microsoft.PowerShell.Man...
Get-Process
używa parametru Name do określania procesów programu PowerShell, pwsh
. Ampersand (&
) uruchamia polecenie jako zadanie w tle. Zostaną wyświetlone informacje o zadaniu, a program PowerShell powróci do monitu, gdy zadanie jest wykonywane w tle.
Aby wyświetlić dane wyjściowe zadania, użyj polecenia cmdlet Receive-Job
. Na przykład Receive-Job -Id 5
.
Przykład 3. Uruchamianie zadania przy użyciu Invoke-Command
W tym przykładzie uruchomiono zadanie na wielu komputerach. Zadanie jest przechowywane w zmiennej i jest wykonywane przy użyciu nazwy zmiennej w wierszu polecenia programu PowerShell.
$jobWRM = Invoke-Command -ComputerName (Get-Content -Path C:\Servers.txt) -ScriptBlock {
Get-Service -Name WinRM } -JobName WinRM -ThrottleLimit 16 -AsJob
Zadanie korzystające z Invoke-Command
jest tworzone i przechowywane w zmiennej $jobWRM
.
Invoke-Command
używa parametru ComputerName w celu określenia komputerów, na których jest uruchamiane zadanie.
Get-Content
pobiera nazwy serwerów z pliku C:\Servers.txt
.
Parametr ScriptBlock określa polecenie, które Get-Service
uzyskuje usługę WinRM. Parametr JobName określa przyjazną nazwę zadania, Usługi WinRM. Parametr ThrottleLimit ogranicza liczbę współbieżnych poleceń do 16. Parametr AsJob uruchamia zadanie w tle, które uruchamia polecenie na serwerach.
Przykład 4. Pobieranie informacji o zadaniu
Ten przykład pobiera informacje o zadaniu i wyświetla wyniki ukończonego zadania uruchomionego na komputerze lokalnym.
$j = Start-Job -ScriptBlock { Get-WinEvent -Log System } -Credential Domain01\User01
$j | Select-Object -Property *
State : Completed
HasMoreData : True
StatusMessage :
Location : localhost
Command : Get-WinEvent -Log System
JobStateInfo : Completed
Finished : System.Threading.ManualResetEvent
InstanceId : 27ce3fd9-40ed-488a-99e5-679cd91b9dd3
Id : 18
Name : Job18
ChildJobs : {Job19}
PSBeginTime : 8/8/2019 14:41:57
PSEndTime : 8/8/2019 14:42:07
PSJobTypeName : BackgroundJob
Output : {}
Error : {}
Progress : {}
Verbose : {}
Debug : {}
Warning : {}
Information : {}
Start-Job
używa parametru ScriptBlock, aby uruchomić polecenie określające Get-WinEvent
w celu pobrania dziennika systemu. Parametr Credential określa konto użytkownika domeny z uprawnieniami do uruchamiania zadania na komputerze. Obiekt zadania jest przechowywany w zmiennej $j
.
Obiekt w zmiennej $j
jest wysyłany w dół potoku do Select-Object
. Parametr właściwości określa gwiazdkę (*
), aby wyświetlić wszystkie właściwości obiektu zadania.
Przykład 5. Uruchamianie skryptu jako zadania w tle
W tym przykładzie skrypt na komputerze lokalnym jest uruchamiany jako zadanie w tle.
Start-Job -FilePath C:\Scripts\Sample.ps1
Start-Job
używa parametru FilePath w celu określenia pliku skryptu przechowywanego na komputerze lokalnym.
Przykład 6. Pobieranie procesu przy użyciu zadania w tle
W tym przykładzie użyto zadania w tle, aby uzyskać określony proces według nazwy.
Start-Job -Name PShellJob -ScriptBlock { Get-Process -Name PowerShell }
Start-Job
używa parametru nazwa, aby określić przyjazną nazwę zadania PShellJob. Parametr ScriptBlock określa Get-Process
, aby pobrać procesy o nazwie PowerShell.
Przykład 7. Zbieranie i zapisywanie danych przy użyciu zadania w tle
W tym przykładzie uruchamia się zadanie, które zbiera dużą ilość danych mapy, a następnie zapisuje je w pliku .tif
.
Start-Job -Name GetMappingFiles -InitializationScript {Import-Module -Name MapFunctions} -ScriptBlock {
Get-Map -Name * | Set-Content -Path D:\Maps.tif }
Start-Job
używa parametru nazwa , aby określić przyjazną nazwę zadania, GetMappingFiles. Parametr InitializationScript uruchamia blok skryptu, który importuje moduł MapFunctions. Parametr ScriptBlock uruchamia Get-Map
i Set-Content
zapisuje dane w lokalizacji określonej przez parametr Path.
Przykład 8. Przekazywanie danych wejściowych do zadania w tle
W tym przykładzie użyto $input
automatycznej zmiennej do przetwarzania obiektu wejściowego. Użyj Receive-Job
, aby wyświetlić dane wyjściowe zadania.
Start-Job -ScriptBlock { Get-Content -Path $input } -InputObject "C:\Servers.txt"
Receive-Job -Name Job45 -Keep
Server01
Server02
Server03
Server04
Start-Job
używa parametru ScriptBlock do uruchamiania Get-Content
z zmienną automatyczną $input
. Zmienna $input
pobiera obiekty z parametru InputObject.
Receive-Job
używa parametru Name w celu określenia zadania i wyprowadzania wyników. Parametr Keep zapisuje dane wyjściowe zadania, aby można je było wyświetlić ponownie podczas sesji programu PowerShell.
Przykład 9. Ustawianie katalogu roboczego dla zadania w tle
WorkingDirectory umożliwia określenie alternatywnego katalogu dla zadania, z którego można uruchamiać skrypty lub otwierać pliki. W tym przykładzie zadanie w tle określa katalog roboczy inny niż bieżąca lokalizacja katalogu.
PS C:\Test> Start-Job -WorkingDirectory C:\Test\Scripts { $PWD } | Receive-Job -AutoRemoveJob -Wait
Path
----
C:\Test\Scripts
Bieżący katalog roboczy dla tego przykładu to C:\Test
.
Start-Job
używa parametru WorkingDirectory w celu określenia katalogu roboczego zadania. Parametr ScriptBlock używa $PWD
w celu wyświetlenia katalogu roboczego zadania.
Receive-Job
wyświetla wyniki zadania w tle.
AutoRemoveJob usuwa zadanie i Wait pomija wiersz polecenia do momentu odebrania wszystkich wyników.
Przykład 10: użyj parametru ArgumentList, aby określić tablicę
W tym przykładzie użyto parametru ArgumentList w celu określenia tablicy argumentów. Tablica jest rozdzielaną przecinkami listą nazw procesów.
Start-Job -ScriptBlock { Get-Process -Name $args } -ArgumentList powershell, pwsh, notepad
Id Name PSJobTypeName State HasMoreData Location Command
-- ---- ------------- ----- ----------- -------- -------
1 Job1 BackgroundJob Running True localhost Get-Process -Name $args
Polecenie cmdlet Start-Job
używa parametru ScriptBlock do uruchomienia polecenia.
Get-Process
używa parametru nazwa, aby określić zmienną automatyczną $args
. Parametr ArgumentList przekazuje tablicę nazw procesów do $args
. Nazwy procesów PowerShell, pwsh i Notatnik to procesy działające na komputerze lokalnym.
Aby wyświetlić dane wyjściowe zadania, użyj polecenia cmdlet Receive-Job
. Na przykład Receive-Job -Id 1
.
Przykład 11: Uruchamianie zadania w programie Windows PowerShell 5.1
W tym przykładzie użyto parametru PSVersion z wartością 5.1 do uruchomienia zadania w sesji programu Windows PowerShell 5.1.
$PSVersionTable.PSVersion
Major Minor Patch PreReleaseLabel BuildLabel
----- ----- ----- --------------- ----------
7 0 0 rc.1
$job = Start-Job -ScriptBlock { $PSVersionTable.PSVersion } -PSVersion 5.1
Receive-Job -Job $job
Major Minor Build Revision
----- ----- ----- --------
5 1 14393 3383
Parametry
-ArgumentList
Określa tablicę argumentów lub wartości parametrów dla skryptu określonego przez parametr FilePath lub polecenie określone za pomocą parametru ScriptBlock.
Argumenty muszą być przekazywane do ArgumentList jako argument tablicy jednowymiarowej. Na przykład lista rozdzielona przecinkami. Aby uzyskać więcej informacji na temat zachowania ArgumentList, zobacz about_Splatting.
Typ: | Object[] |
Aliasy: | Args |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Authentication
Określa mechanizm używany do uwierzytelniania poświadczeń użytkownika.
Dopuszczalne wartości tego parametru są następujące:
- Domyślny
- Podstawowy
- Credssp
- Streszczenie
- Kerberos
- Negocjować
- NegotiateWithImplicitCredential
Domyślna wartość to Default.
Uwierzytelnianie CredSSP jest dostępne tylko w systemach Windows Vista, Windows Server 2008 i nowszych wersjach systemu operacyjnego Windows.
Aby uzyskać więcej informacji na temat wartości tego parametru, zobacz AuthenticationMechanism.
Ostrożność
Uwierzytelnianie za pomocą dostawcy obsługi zabezpieczeń poświadczeń (CredSSP), w którym poświadczenia użytkownika są przekazywane do zdalnego komputera w celu uwierzytelnienia, jest przeznaczone do poleceń wymagających uwierzytelniania na więcej niż jednym zasobie, takich jak dostęp do zdalnego udziału sieciowego. Ten mechanizm zwiększa ryzyko bezpieczeństwa operacji zdalnej. W przypadku naruszenia zabezpieczeń komputera zdalnego poświadczenia przekazywane do niego mogą służyć do kontrolowania sesji sieciowej.
Typ: | AuthenticationMechanism |
Dopuszczalne wartości: | Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos |
Position: | Named |
Domyślna wartość: | Default |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Credential
Określa konto użytkownika, które ma uprawnienia do wykonania tej akcji. Jeśli nie określono parametru Credential, polecenie używa poświadczeń bieżącego użytkownika.
Wpisz nazwę użytkownika, taką jak User01 lub Domain01\User01, lub wprowadź obiekt PSCredential wygenerowany przez polecenie cmdlet Get-Credential
. Jeśli wpiszesz nazwę użytkownika, zostanie wyświetlony monit o wprowadzenie hasła.
Poświadczenia są przechowywane w obiekcie PSCredential, a hasło jest przechowywane jako SecureString.
Notatka
Aby uzyskać więcej informacji na temat ochrony danych SecureString, zobacz Jak bezpieczny jest protokół SecureString?.
Typ: | PSCredential |
Position: | Named |
Domyślna wartość: | Current user |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-DefinitionName
Określa nazwę definicji zadania, które uruchamia ten cmdlet. Użyj tego parametru, aby uruchomić niestandardowe typy zadań, które mają nazwę definicji, taką jak zaplanowane zadania.
Gdy używasz Start-Job
do uruchamiania wystąpienia zaplanowanego zadania, zadanie jest uruchamiane natychmiast, niezależnie od wyzwalaczy zadań lub opcji zadania. Utworzone wystąpienie zadania jest zaplanowanym zadaniem, ale nie jest zapisywane na dysku jak wyzwalane zaplanowane zadania. Nie można użyć parametru ArgumentListStart-Job
, aby podać wartości parametrów skryptów uruchamianych w zaplanowanym zadaniu.
Ten parametr został wprowadzony w programie PowerShell 3.0.
Typ: | String |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-DefinitionPath
Określa ścieżkę definicji zadania, które uruchamia to polecenie cmdlet. Wprowadź ścieżkę definicji. Konkatenacja wartości parametrów DefinitionPath i DefinitionName jest całkowicie zakwalifikowaną ścieżką definicji zadania. Użyj tego parametru, aby uruchomić niestandardowe typy zadań, które mają ścieżkę definicji, taką jak zaplanowane zadania.
W przypadku zaplanowanych zadań wartość parametru DefinitionPath jest $HOME\AppData\Local\Windows\PowerShell\ScheduledJob
.
Ten parametr został wprowadzony w programie PowerShell 3.0.
Typ: | String |
Position: | 1 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-FilePath
Określa lokalny skrypt, który jest uruchomiony przez Start-Job
jako zadanie w tle. Wprowadź ścieżkę i nazwę pliku skryptu lub użyj potoku, aby wysłać ścieżkę skryptu do Start-Job
. Skrypt musi znajdować się na komputerze lokalnym lub w folderze, do którego ma dostęp komputer lokalny.
W przypadku użycia tego parametru program PowerShell konwertuje zawartość określonego pliku skryptu na blok skryptu i uruchamia blok skryptu jako zadanie w tle.
Typ: | String |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-InitializationScript
Określa polecenia uruchamiane przed uruchomieniem zadania. Aby utworzyć blok skryptu, należy ująć polecenia w nawiasy klamrowe ({}
).
Użyj tego parametru, aby przygotować sesję, w której uruchamiane jest zadanie. Można na przykład użyć jej do dodawania funkcji, przystawek i modułów do sesji.
Typ: | ScriptBlock |
Position: | 1 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-InputObject
Określa dane wejściowe polecenia . Wprowadź zmienną zawierającą obiekty lub wpisz polecenie lub wyrażenie, które generuje obiekty.
W wartości parametru ScriptBlock użyj zmiennej automatycznej $input
do reprezentowania obiektów wejściowych.
Typ: | PSObject |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-LiteralPath
Określa lokalny skrypt, który ten cmdlet uruchamia jako zadanie w tle. Wprowadź ścieżkę skryptu na komputerze lokalnym.
Start-Job
używa wartości parametru LiteralPath dokładnie tak, jak został wpisany. Żadne znaki nie są interpretowane jako symbole wieloznaczne. Jeśli ścieżka zawiera znaki ucieczki, należy ująć ją w pojedynczy cudzysłów. Pojedyncze cudzysłowy informują PowerShell, aby nie interpretowało żadnych znaków jako sekwencji ucieczki.
Typ: | String |
Aliasy: | PSPath, LP |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Name
Określa przyjazną nazwę nowego zadania. Możesz użyć nazwy, aby zidentyfikować zadanie w odniesieniu do innych poleceń cmdlet dotyczących zadań, takie jak polecenie cmdlet Stop-Job
.
Domyślna nazwa przyjazna użytkownikowi to Job#
, gdzie #
jest liczbą rzędu, która jest zwiększana dla każdego zadania.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-PSVersion
Określa wersję programu PowerShell, która ma być używana do uruchamiania zadania. Gdy wartość PSVersion jest 5.1 Zadanie jest uruchamiane w sesji programu Windows PowerShell 5.1. W przypadku każdej innej wartości zadanie jest uruchamiane przy użyciu bieżącej wersji programu PowerShell.
Ten parametr został dodany w programie PowerShell 7 i działa tylko w systemie Windows.
Typ: | Version |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-RunAs32
Począwszy od programu PowerShell 7, parametr RunAs32 nie działa w 64-bitowym programie PowerShell (pwsh
).
Jeśli w 64-bitowym programie PowerShell określono RunAs32, Start-Job
zgłasza błąd kończącego wyjątku.
Aby uruchomić 32-bitowy proces programu PowerShell (pwsh
) przy użyciu RunAs32, musisz mieć zainstalowany 32-bitowy program PowerShell.
W 32-bitowym programie PowerShell RunAs32 wymusza uruchomienie zadania w 32-bitowym procesie, nawet w 64-bitowym systemie operacyjnym.
W 64-bitowych wersjach systemów Windows 7 i Windows Server 2008 R2, gdy polecenie Start-Job
zawiera RunAs32 parametru, nie można użyć parametru Credential w celu określenia poświadczeń innego użytkownika.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-ScriptBlock
Określa polecenia, które mają być uruchomione w zadaniu w tle. Aby utworzyć blok skryptu, należy ująć polecenia w nawiasy klamrowe ({}
). Użyj zmiennej automatycznej $input
, aby uzyskać dostęp do wartości parametru InputObject. Ten parametr jest wymagany.
Typ: | ScriptBlock |
Aliasy: | Command |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Type
Określa typ niestandardowy zadań uruchomionych przez Start-Job
. Wprowadź niestandardową nazwę typu zadania, na przykład PSScheduledJob dla zaplanowanych zadań lub zadania PSWorkflowJob dla zadań przepływów pracy. Ten parametr nie jest prawidłowy dla standardowych zadań w tle.
Ten parametr został wprowadzony w programie PowerShell 3.0.
Typ: | String |
Position: | 2 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-WorkingDirectory
Określa początkowy katalog roboczy zadania w tle. Jeśli parametr nie zostanie określony, zadanie zostanie uruchomione z lokalizacji domyślnej. Domyślną lokalizacją jest bieżący katalog roboczy obiektu wywołującego, który uruchomił zadanie.
Ten parametr został wprowadzony w programie PowerShell 7.
Typ: | String |
Position: | Named |
Domyślna wartość: | $HOME on Unix (macOS, Linux) and $HOME\Documents on Windows |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
Obiekt można przekazać potokiem z właściwością Name do parametru nazwa do tego polecenia cmdlet. Na przykład można potokować obiekt FileInfo z Get-ChildItem
.
Dane wyjściowe
System.Management.Automation.PSRemotingJob
To polecenie cmdlet zwraca obiekt PSRemotingJob reprezentujący zadanie, które zostało uruchomione.
Uwagi
Program PowerShell zawiera następujące aliasy dla Start-Job
:
- Wszystkie platformy:
sajb
Aby działać w tle, Start-Job
uruchamia się we własnej sesji w ramach bieżącej sesji. Jeśli użyjesz polecenia cmdlet Invoke-Command
do uruchomienia polecenia Start-Job
w sesji na komputerze zdalnym, Start-Job
jest uruchamiany w tej sesji zdalnej.