Aracılığıyla paylaş


Resume-Job

Askıya alınan işi yeniden başlatır.

Syntax

Resume-Job
      [-Wait]
      [-Id] <Int32[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Resume-Job
      [-Job] <Job[]>
      [-Wait]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Resume-Job
      [-Wait]
      [-Name] <String[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Resume-Job
      [-Wait]
      [-InstanceId] <Guid[]>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Resume-Job
      [-Wait]
      [-State] <JobState>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Resume-Job
      [-Wait]
      [-Filter] <Hashtable>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

cmdlet'iResume-Job, örneğin cmdlet'ini veya about_Suspend-Workflow etkinliğini kullanarak Suspend-Job askıya alınmış bir iş akışı işini sürdürür. bir iş akışı işi sürdürülürken, iş altyapısı denetim noktaları gibi kaydedilmiş kaynaklardan gelen durumu, meta verileri ve çıkışı yeniden oluşturur. İş, durum veya veri kaybı olmadan yeniden başlatılır. İş durumu Askıya Alındı durumundan Çalışıyor olarak değiştirilir.

ad, kimlik, örnek kimliğine göre işleri seçmek veya cmdlet'i tarafından Get-Job döndürülen bir iş nesnesi gibi bir iş nesnesini adresine yöneltmek için parametresini Resume-JobResume-Jobkullanın. Devam ettirilecek işi seçmek için özellik filtresi de kullanabilirsiniz.

Varsayılan olarak, Resume-Job tüm işler henüz sürdürülmese bile hemen döndürür. Belirtilen tüm işler sürdürülene kadar komut istemini engellemek için Wait parametresini kullanın.

Resume-Job Cmdlet yalnızca iş akışı işleri gibi özel iş türlerinde çalışır. Cmdlet kullanılarak Start-Job başlatılanlar gibi standart arka plan işlerinde çalışmaz. Desteklenmeyen türde bir iş gönderirseniz, Resume-Job sonlandırıcı bir hata oluşturur ve çalışmayı durdurur.

bir iş akışı işini tanımlamak için işin PSJobTypeName özelliğinde PSWorkflowJob değerini arayın. Belirli bir özel iş türünün cmdlet'i destekleyip desteklemediğini Resume-Job belirlemek için özel iş türünün yardım konularına bakın.

Özel bir iş türünde İş cmdlet'ini kullanmadan önce, cmdlet'ini kullanarak Import-Module veya modülde bir cmdlet alarak veya kullanarak özel iş türünü destekleyen modülü içeri aktarın.

Bu cmdlet, Windows PowerShell 3.0'da kullanıma sunulmuştur.

Örnekler

Örnek 1: Kimliğine göre bir işi sürdürme

Bu örnekteki komutlar işin askıya alınmış bir iş akışı işi olduğunu doğrular ve sonra işi sürdürür. İlk komut, işi almak için cmdlet'ini kullanır Get-Job . Çıktı, işin askıya alınmış bir iş akışı işi olduğunu gösterir. İkinci komut, işi 4 Kimlik değeriyle sürdürmek için cmdlet'in Id parametresini Resume-Job kullanır.

PS C:\> Get-Job EventJob
Id     Name            PSJobTypeName   State         HasMoreData     Location   Command
--     ----            -------------   -----         -----------     --------   -------
4      EventJob        PSWorkflowJob   Suspended     True            Server01   \\Script\Share\Event.ps1

PS C:\> Resume-Job -Id 4

Örnek 2: İşi ada göre sürdürme

Bu komut, yerel bilgisayarda birkaç iş akışı işini sürdürmek için Name parametresini kullanır.

PS C:\> Resume-Job -Name WorkflowJob, InventoryWorkflow, WFTest*

Örnek 3: Özel özellik değerlerini kullanma

Bu komut, sürdürülecek iş akışı işini tanımlamak için özel bir özelliğin değerini kullanır. İş akışı işini CustomID özelliğine göre tanımlamak için Filter parametresini kullanır. Ayrıca, devam ettirmeye çalışmadan önce iş akışı işinin askıya alındığını doğrulamak için State parametresini kullanır.

PS C:\> Resume-Job -Filter @{CustomID="T091291"} -State Suspended

Örnek 4: Uzak bilgisayardaki tüm askıya alınan işleri sürdürme

Bu komut, Srv01 uzak bilgisayardaki tüm askıya alınan işleri sürdürür.

PS C:\> Invoke-Command -ComputerName Srv01 -ScriptBlock {Get-Job -State Suspended | Resume-Job}

komut, Srv01 bilgisayarında bir komut çalıştırmak için cmdlet'ini kullanır Invoke-Command . Uzak komut, bilgisayardaki tüm askıya alınan işleri almak için cmdlet'in Get-Job State parametresini kullanır. İşlem hattı işleci (|), askıya alınan işleri cmdlet'ine Resume-Job gönderir ve bu işleri sürdürür.

Örnek 5: İşlerin sürdürülmesini bekleyin

Bu komut, yalnızca belirtilen tüm işler sürdürüldükten sonra döndürmeye yönlendirmek Resume-Job için Wait parametresini kullanır. Wait parametresi, betik devam etmeden önce işlerin sürdürüldüğünü varsayan betiklerde özellikle yararlıdır.

PS C:\> Resume-Job -Name WorkflowJob, InventoryWorkflow, WFTest* -Wait

Örnek 6: Kendini askıya alma iş akışını sürdürme

Bu kod örneği, bir iş akışındaki etkinliği gösterir Suspend-Workflow .

Test-Suspend Server01 bilgisayarındaki iş akışı. İş akışını çalıştırdığınızda, iş akışı etkinliği çalıştırır Get-Date ve sonucu değişkende $a depolar. Ardından etkinliği çalıştırır Suspend-Workflow . Yanıt olarak bir denetim noktası alır, iş akışını askıya alır ve bir iş akışı iş nesnesi döndürür. Suspend-Workflow iş akışı açıkça iş olarak çalıştırılmasa bile bir iş akışı iş nesnesi döndürür.

Resume-JobTest-Suspend iş akışını job8'de sürdürür. İş sürdürülene kadar komut istemini tutmak için Wait parametresini kullanır.

cmdlet'i Receive-Job iş akışının Test-Suspend sonuçlarını alır. İş akışındaki son komut, geçerli tarih ve saat ile iş akışı askıya alınmadan önce değişkene $a kaydedilen tarih ve saat arasındaki geçen süreyi temsil eden bir TimeSpan nesnesi döndürür.

#SampleWorkflow
Workflow Test-Suspend
{
    $a = Get-Date
    Suspend-Workflow
    (Get-Date)- $a
}

PS C:\> Test-Suspend -PSComputerName Server01
Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
8      Job8            PSWorkflowJob   Suspended     True            Server01             Test-Suspend

PS C:\> Resume-Job -Name "Job8" -Wait
Id     Name            PSJobTypeName   State         HasMoreData     Location             Command
--     ----            -------------   -----         -----------     --------             -------
8      Job8            PSWorkflowJob   Running       True            Server01             Test-Suspend

PS C:\> Receive-Job -Name Job8
        Days              : 0
        Hours             : 0
        Minutes           : 0
        Seconds           : 19
        Milliseconds      : 823
        Ticks             : 198230041
        TotalDays         : 0.000229432917824074
        TotalHours        : 0.00550639002777778
        TotalMinutes      : 0.330383401666667
        TotalSeconds      : 19.8230041
        TotalMilliseconds : 19823.0041
        PSComputerName    : Server01

cmdlet'i Resume-Job , etkinliği kullanarak Suspend-Workflow askıya alınan bir iş akışı işini sürdürmenize olanak tanır. Bu etkinlik, iş akışının içinden bir iş akışını askıya alır. Yalnızca iş akışlarında geçerlidir.

hakkında Suspend-Workflowbilgi için bkz. about_Suspend-Workflow](.. /PSWorkflow/about/about_Suspend-Workflow.md).

Parametreler

-Confirm

Cmdlet'i çalıştırmadan önce sizden onay ister.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Filter

Koşulların karma tablosunu belirtir. Bu cmdlet, karma tablodaki tüm koşulları karşılayan işleri sürdürür. Anahtarların iş özellikleri, değerlerin ise iş özelliği değerleri olduğu bir karma tablo girin.

Type:Hashtable
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Id

Bu cmdlet'in sürdürür işleri için bir kimlik dizisi belirtir.

Kimlik, geçerli oturumdaki işi benzersiz olarak tanımlayan bir tamsayıdır. Anımsamak ve yazmak örnek kimliğinden daha kolaydır, ancak yalnızca geçerli oturumda benzersizdir. Virgülle ayırarak bir veya daha fazla kimlik yazabilirsiniz. İşin kimliğini bulmak için komutunu çalıştırın Get-Job.

Type:Int32[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-InstanceId

Bu cmdlet'in sürdürdüğünü işlerin örnek kimlikleri dizisini belirtir. Varsayılan değer tüm işlerdir.

Örnek kimliği, bilgisayardaki işi benzersiz olarak tanımlayan bir GUID'dir. bir işin örnek kimliğini bulmak için komutunu çalıştırın Get-Job.

Type:Guid[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Job

Sürdürülecek işleri belirtir. İşleri içeren bir değişken veya işleri alan bir komut girin. İşleri cmdlet'ine Resume-Job de yöneltebilirsiniz.

Type:Job[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Bu cmdlet'in sürdürür işleri kolay adları dizisi belirtir. Bir veya daha fazla iş adı girin. Joker karakterlere izin verilir.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-State

Sürdürülecek işlerin durumunu belirtir. Bu parametrenin kabul edilebilir değerleri şunlardır:

  • NotStarted
  • Çalışıyor
  • Tamamlandı
  • Başarısız
  • Durduruldu
  • Engellendi
  • Askıya alındı
  • Bağlantı kesildi
  • Askıya alınıyor
  • Durduruluyor

Bu cmdlet yalnızca Askıya Alındı durumundaki işleri sürdürür.

İş durumları hakkında daha fazla bilgi için bkz . JobState Numaralandırması.

Type:JobState
Accepted values:NotStarted, Running, Completed, Failed, Stopped, Blocked, Suspended, Disconnected, Suspending, Stopping, AtBreakpoint
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Wait

Bu cmdlet'in tüm iş sonuçları yeniden başlatılana kadar komut istemini gizlediğini gösterir. Varsayılan olarak, bu cmdlet hemen kullanılabilir sonuçları döndürür.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Cmdlet çalıştırılıyorsa ne olacağını gösterir. Cmdlet çalıştırılmaz.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Girişler

Job

Tüm iş türlerini bu cmdlet'e yöneltebilirsiniz. Desteklenmeyen türde bir iş alırsa Resume-Job , sonlandırıcı bir hata döndürür.

Çıkışlar

None, System.Management.Automation.Job

Bu cmdlet, PassThru parametresini kullanırsanız sürdürmeye çalıştığı işleri döndürür. Aksi takdirde, bu cmdlet herhangi bir çıkış oluşturmaz.

Notlar

Windows PowerShell için aşağıdaki diğer adları Resume-Jobiçerir:

  • rujb

  • Resume-Job yalnızca askıya alınan işleri sürdürebilir. Farklı bir durumda bir iş gönderirseniz, Resume-Job iş üzerinde özgeçmiş işlemini çalıştırır, ancak işin sürdürülemediğini bildiren bir uyarı oluşturur. Uyarıyı engellemek için WarningAction ortak parametresini SilentlyContinue değeriyle kullanın.

  • İş, iş akışı işi (PSWorkflowJobResume-Job) gibi devam etme işlemini destekleyen bir türde değilse, sonlandırıcı bir hata döndürür.

  • Askıya alınan işi kaydetme mekanizması ve konumu, iş türüne bağlı olarak değişebilir. Örneğin, askıya alınan iş akışı işleri varsayılan olarak düz bir dosya deposuna kaydedilir, ancak sql veritabanına da kaydedilebilir.

  • Bir işi sürdürürken, iş durumu Askıya Alındı yerine Çalışıyor olarak değişir. Bu cmdlet tarafından sürdürülenler de dahil olmak üzere çalışan işleri bulmak için, çalışıyor durumundaki işleri almak için cmdlet'in Get-JobState parametresini kullanın.

  • Bazı iş türleri, Windows PowerShell'in işi askıya almasını engelleyen seçeneklere veya özelliklere sahiptir. İşi askıya alma girişimleri başarısız olursa, iş seçeneklerinin ve özelliklerin askıya alma işlemine izin vediğini doğrulayın.