Get-JobTrigger

Zamanlanmış işlerin iş tetikleyicilerini alır.

Syntax

Get-JobTrigger
   [[-TriggerId] <Int32[]>]
   [-InputObject] <ScheduledJobDefinition>
   [<CommonParameters>]
Get-JobTrigger
   [[-TriggerId] <Int32[]>]
   [-Id] <Int32>
   [<CommonParameters>]
Get-JobTrigger
   [[-TriggerId] <Int32[]>]
   [-Name] <String>
   [<CommonParameters>]

Description

Get-JobTrigger Cmdlet, zamanlanmış işlerin iş tetikleyicilerini alır. İş tetikleyicilerini incelemek veya iş tetikleyicilerini diğer cmdlet'lere yöneltmek için bu komutu kullanabilirsiniz.

İş tetikleyicisi, yinelenen bir zamanlamayı veya zamanlanmış işi başlatma koşullarını tanımlar. İş tetikleyicileri diske bağımsız olarak kaydedilmez; bunlar zamanlanmış bir işin parçasıdır. İş tetikleyicisi almak için tetikleyicinin başlatıldığı zamanlanmış işi belirtin.

Zamanlanmış işleri tanımlamak için cmdlet'in Get-JobTrigger parametrelerini kullanın. Zamanlanmış işleri adlarına veya kimlik numaralarına göre veya cmdlet'i Get-JobTriggertarafından Get-ScheduledJob döndürülenler gibi ScheduledJob nesnelerini içine girerek veya ekleyerek tanımlayabilirsiniz.

Get-JobTrigger , Windows PowerShell'de bulunan PSScheduledJob modülündeki iş zamanlama cmdlet'leri koleksiyonundan biridir.

Zamanlanmış İşler hakkında daha fazla bilgi için PSScheduledJob modülündeki Hakkında konu başlıklarına bakın. PSScheduledJob modülünü içeri aktarın ve şunu yazın: Get-Help about_Scheduled* veya about_Scheduled_Jobs bakın.

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

Örnekler

Örnek 1: Zamanlanmış iş adına göre iş tetikleyicisi alma

Get-JobTrigger -Name "BackupJob"

Komutu, zamanlanmış işin iş tetikleyicilerini almak için name parametresini BackupJobGet-JobTrigger kullanır.

Örnek 2: Kimliğine göre iş tetikleyicisi alma

Örnek, zamanlanmış bir işin iş tetikleyicilerini almak için id parametresini Get-JobTrigger kullanır.

Get-ScheduledJob

Id         Name            Triggers        Command                                  Enabled
--         ----            --------        -------                                  -------
1          ArchiveProjects {1}             \\Server\Share\Archive-Projects.ps1      True
2          Backup          {1,2}           \\Server\Share\Run-Backup.ps1            True
3          Test-HelpFiles  {1}             \\Server\Share\Test-HelpFiles.ps1        True
4          TestJob         {}              \\Server\Share\Run-AllTests.ps1          True

Get-JobTrigger -ID 3

İlk komut, zamanlanmış işleri yerel bilgisayarda görüntülemek için cmdlet'ini kullanır Get-ScheduledJob . Ekran, zamanlanmış işlerin kimliklerini içerir.

İkinci komut, işin iş tetikleyicisini almak için cmdlet'ini Test-HelpFiles kullanır Get-JobTrigger (kimliği olan 3).

Örnek 3: bir işi işleyerek iş tetikleyicilerini alma

Bu örnek, eşleşen adlara sahip işlerin iş tetikleyicilerini alır.

Get-ScheduledJob -Name *Backup*, *Archive* | Get-JobTrigger

Bu komut, adlarında veya Archive olan tüm işlerin Backup iş tetikleyicilerini alır.

Örnek 4: Uzak bilgisayardaki bir işin iş tetikleyicisini alma

Bu örnek, uzak bilgisayardaki zamanlanmış bir işin tetikleyicilerini alır.

Invoke-Command -ComputerName Server01 { Get-ScheduledJob Backup | Get-JobTrigger -TriggerID 2 }

komutu, Server01 bilgisayarında bir komut çalıştırmak için cmdlet'ini kullanır Invoke-Command . Cmdlet'ine Get-ScheduledJob bağlandığı zamanlanmış işi almak Backup için cmdlet'ini Get-JobTrigger kullanır. Yalnızca ikinci tetikleyiciyi almak için TriggerID parametresini kullanır.

Örnek 5: Tüm iş tetikleyicilerini alma

Bu örnek, yerel bilgisayardaki tüm zamanlanmış işlerin tüm iş tetikleyicilerini alır.

Get-ScheduledJob | Get-JobTrigger |
    Format-Table -Property ID, Frequency, At, DaysOfWeek, Enabled, @{Label="ScheduledJob";Expression={$_.JobDefinition.Name}} -AutoSize

Id Frequency At                    DaysOfWeek Enabled ScheduledJob
-- --------- --                    ---------- ------- ------------
1    Weekly  9/28/2011 3:00:00 AM  {Monday}   True    Backup
1    Daily   9/27/2011 11:00:00 PM            True    Test-HelpFiles

komutu, zamanlanmış işleri yerel bilgisayara almak için öğesini kullanır Get-ScheduledJob ve her Get-JobTriggerzamanlanmış işin (varsa) iş tetikleyicisini alan öğesine aktarır.

Zamanlanan işin adını iş tetikleyicisi görünümüne eklemek için komut, cmdlet'in Format-Table hesaplanan özellik özelliğini kullanır. Varsayılan olarak görüntülenen iş tetikleyici özelliklerine ek olarak, komut zamanlanan işin adını görüntüleyen yeni bir ScheduledJob özelliği oluşturur.

Örnek 6: Zamanlanmış bir işin iş tetikleyici özelliğini alma

Bu örnekte, zamanlanmış bir işin JobTrigger özelliğini görüntülemek için farklı yöntemler gösterilmektedir.

(Get-ScheduledJob Test-HelpFiles).JobTriggers
Get-ScheduledJob | foreach {$_.JobTriggers}

İlk komut, zamanlanmış işi almak için cmdlet'ini Test-HelpFiles kullanırGet-ScheduledJob. Ardından, zamanlanan işin JobTriggers özelliğini Test-HelpFiles almak için nokta yöntemini (.) kullanır.

İkinci komut, yerel bilgisayardaki tüm zamanlanmış işleri almak için cmdlet'ini kullanır Get-ScheduledJob . Zamanlanan her işin JobTriggers özelliğinin değerini almak için cmdlet'ini kullanırForEach-Object.

Zamanlanmış bir işin iş tetikleyicileri, işin JobTriggers özelliğinde depolanır. Bu örnek, iş tetikleyicilerini almak için cmdlet'ini kullanmanın Get-JobTrigger alternatiflerini gösterir. Sonuçlar cmdlet'in kullanımıyla Get-JobTrigger aynıdır ve teknikler birbirinin yerine kullanılabilir.

Örnek 7: İş tetikleyicilerini karşılaştırma

Get-ScheduledJob -Name ArchiveProjects | Get-JobTrigger | Tee-Object -Variable t1

Id         Frequency       Time                   DaysOfWeek              Enabled
--         ---------       ----                   ----------              -------
0          Daily           9/26/2011 3:00:00 AM                           True

Get-ScheduledJob -Name "Test-HelpFiles" | Get-JobTrigger | Tee-Object -Variable t2

Id         Frequency       Time                   DaysOfWeek              Enabled
--         ---------       ----                   ----------              -------
0          Daily           9/26/2011 3:00:00 AM                           True

$t1| Get-Member -Type Property | ForEach-Object { Compare-Object $t1 $t2 -Property $_.Name}

RandomDelay                                                 SideIndicator
-----------                                                 -------------
00:00:00                                                    =>
00:03:00                                                    <=

İlk komut, zamanlanan işin iş tetikleyicisini ArchiveProjects alır. komut, iş tetikleyicisini cmdlet'ine Tee-Object aktarır ve bu da iş tetikleyicisini değişkene $t1 kaydeder ve komut satırında görüntüler.

İkinci komut, zamanlanan işin iş tetikleyicisini Test-HelpFiles alır. komut, iş tetikleyicisini cmdlet'ine Tee-Object aktarır ve bu da iş tetikleyicisini değişkene $t2 kaydeder ve komut satırında görüntüler.

Üçüncü komut, ve $t 2 değişkenlerindeki $t1 iş tetikleyicilerini karşılaştırır. $t 1 değişkenindeki iş tetikleyicisinin özelliklerini almak için cmdlet'ini kullanır Get-Member . Özellikleri cmdlet'ine ForEach-Object aktarır ve her özelliği değişkendeki $t2 iş tetikleyicisinin özellikleriyle ada göre karşılaştırır. Komut daha sonra farklı özellikleri cmdlet'ine Format-List aktarır ve bu özellikleri bir listede görüntüler. Çıkış, iş tetikleyicileri aynı gibi görünse de iş tetikleyicisinin HelpFiles üç (3) dakikalık rastgele bir gecikme içerdiğini gösterir.

Bu örnekte, zamanlanmış iki işin iş tetikleyicilerinin nasıl karşılaştırıldığı gösterilmektedir.

Parametreler

-Id

Zamanlanmış işin kimlik numarasını belirtir. Get-JobTrigger belirtilen zamanlanmış işin iş tetikleyicisini alır.

Yerel bilgisayarda veya uzak bilgisayarda zamanlanmış işlerin kimlik numarasını almak için cmdlet'ini Get-ScheduledJob kullanın.

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

-InputObject

Zamanlanmış bir işi belirtir. ScheduledJob nesnelerini içeren bir değişken girin veya komut gibi ScheduledJob nesnelerini alan bir Get-ScheduledJob komut veya ifade yazın. ScheduledJob nesnelerini öğesine Get-JobTriggerde yöneltebilirsiniz.

Type:Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Zamanlanmış işin adını belirtir. Get-JobTrigger belirtilen zamanlanmış işin iş tetikleyicisini alır. Joker karakterler desteklenir.

Yerel bilgisayarda veya uzak bilgisayarda zamanlanmış işlerin adlarını almak için cmdlet'ini Get-ScheduledJob kullanın.

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

-TriggerId

Belirtilen iş tetikleyicilerini alır. Zamanlanmış işin bir veya daha fazla iş tetikleyicisinin tetikleyici kimliklerini girin. Name, ID veya InputObject parametreleri tarafından belirtilen zamanlanmış işin birden çok iş tetikleyicisi olduğunda bu parametreyi kullanın.

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

Girişler

Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition

Zamanlanmış bir işi bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

Microsoft.PowerShell.ScheduledJob.ScheduledJobTrigger

Bu cmdlet zamanlanmış işin tetikleyicisini döndürür.