New-ScheduledJobOption

Zamanlanmış bir iş için gelişmiş seçenekler içeren bir nesne oluşturur.

Syntax

New-ScheduledJobOption
   [-RunElevated]
   [-HideInTaskScheduler]
   [-RestartOnIdleResume]
   [-MultipleInstancePolicy <TaskMultipleInstancePolicy>]
   [-DoNotAllowDemandStart]
   [-RequireNetwork]
   [-StopIfGoingOffIdle]
   [-WakeToRun]
   [-ContinueIfGoingOnBattery]
   [-StartIfOnBattery]
   [-IdleTimeout <TimeSpan>]
   [-IdleDuration <TimeSpan>]
   [-StartIfIdle]
   [<CommonParameters>]

Description

Cmdlet, New-ScheduledJobOption zamanlanmış bir iş için gelişmiş seçenekler içeren bir nesne oluşturur.

Yeni veya var olan bir zamanlanmış iş için iş seçeneklerini ayarlamak üzere döndüren New-ScheduledJobOption ScheduledJobOptions nesnesini kullanabilirsiniz. Alternatif olarak, var olan bir zamanlanmış işin iş seçeneklerini Get-ScheduledJobOption almak için cmdlet'ini kullanarak veya iş seçeneklerini göstermek için bir karma tablo değeri kullanarak iş seçeneklerini ayarlayabilirsiniz.

Parametreler olmadan, New-ScheduledJobOption tüm seçenekler için varsayılan değerleri içeren bir nesne oluşturur. JobDefinition özelliği dışındaki tüm özellikler düzenlenebildiği için, sonuçta elde edilen nesneyi şablon olarak kullanabilir ve kuruluşunuz için standart seçenek nesneleri oluşturabilirsiniz.

Zamanlanmış işler oluştururken ve zamanlanmış iş seçeneklerini ayarlarken, tüm zamanlanmış iş seçeneklerinin varsayılan değerlerini gözden geçirin. Zamanlanmış işler yalnızca yürütmeleri için ayarlanan tüm koşullar karşılandığında çalışır.

New-ScheduledJobOption , 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: Varsayılan değerlerle zamanlanmış iş seçeneği nesnesi oluşturma

Bu örnek, varsayılan değerlerle zamanlanmış bir iş seçeneği nesnesi oluşturur.

New-ScheduledJobOption

Örnek 2: Özel değerlerle zamanlanmış iş seçeneği nesnesi oluşturma

Bu örnek, özel değerlerle zamanlanmış bir iş seçeneği nesnesi oluşturur

New-ScheduledJobOption -RequireNetwork -StartIfOnBattery

StartIfOnBatteries     : True
StopIfGoingOnBatteries : True
WakeToRun              : False
StartIfNotIdle         : True
StopIfGoingOffIdle     : False
RestartOnIdleResume    : False
IdleDuration           : 00:10:00
IdleTimeout            : 01:00:00
ShowInTaskScheduler    : True
RunElevated            : False
RunWithoutNetwork      : False
DoNotAllowDemandStart  : False
MultipleInstancePolicy : Ignore
NewJobDefinition       :

Aşağıdaki komut, ağ gerektiren zamanlanmış bir iş nesnesi oluşturur ve bilgisayar AC gücüne bağlı olmasa bile zamanlanmış işi çalıştırır.

Çıktı, RequireNetwork parametresinin RunWithoutNetwork özelliğinin $false değerini olarak değiştirdiğini ve StartIfOnBattery parametresinin StartIfOnBatteries özelliğinin değerini olarak $truedeğiştirdiğini gösterir.

Örnek 3: Yeni bir zamanlanmış iş için seçenekleri ayarlama

Bu örnekte, yeni bir zamanlanmış işin seçeneklerini ayarlamak için döndüren New-ScheduledJobOption ScheduledJobOptions nesnesinin nasıl kullanılacağı gösterilmektedir.

$runAsAdmin = New-ScheduledJobOption -RunElevated
Register-ScheduledJob -Name Backup -FilePath D:\Scripts\Backup.ps1 -Trigger $Mondays -ScheduledJobOption $RunAsAdmin
Get-ScheduledJobOption -Name Backup

StartIfOnBatteries     : False
StopIfGoingOnBatteries : True
WakeToRun              : False
StartIfNotIdle         : True
StopIfGoingOffIdle     : False
RestartOnIdleResume    : False
IdleDuration           : 00:10:00
IdleTimeout            : 01:00:00
ShowInTaskScheduler    : True
RunElevated            : True
RunWithoutNetwork      : True
DoNotAllowDemandStart  : False
MultipleInstancePolicy : IgnoreNew
JobDefinition          : Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition

İlk komut, RunElevated parametresiyle bir ScheduledJobOptions nesnesi oluşturur. Nesnesini değişkene $runAsAdmin kaydeder.

İkinci komut, cmdlet'ini Register-ScheduledJob kullanarak yeni bir zamanlanmış iş oluşturur. ScheduledJobOption parametresinin değeri değişkeninin değerindeki $runAsAdmin seçenek nesnesidir.

Üçüncü komut, zamanlanmış yedekleme işinin iş seçeneklerini almak için cmdlet'ini kullanırGet-ScheduledJobOption. Cmdlet çıkışı RunElevated özelliğinin olarak ayarlandığını $true ve iş seçeneği nesnesinin JobDefinition özelliğinin artık Backup zamanlanmış işi için zamanlanmış iş nesnesiyle doldurulduğunu gösterir.

Örnek 4: Zamanlanmış iş seçeneği nesnesinin özelliklerini sıralama

Bu örnek, kolay okuma için ScheduledJobOptions nesnesinin özelliklerini alfabetik sırada sıralamayı gösterir.

$options = New-ScheduledJobOption -WakeToRun
$options.PSObject.Properties | Sort-Object -Property Name | Format-Table -Property Name, Value -Autosize

Name                       Value
----                       -----
DoNotAllowDemandStart      False
IdleDuration            00:10:00
IdleTimeout             01:00:00
JobDefinition
MultipleInstancePolicy IgnoreNew
RestartOnIdleResume        False
RunElevated                False
RunWithoutNetwork           True
ShowInTaskScheduler         True
StartIfNotIdle              True
StartIfOnBatteries         False
StopIfGoingOffIdle         False
StopIfGoingOnBatteries      True
WakeToRun                   True

İlk komut bir ScheduledJobOptions nesnesi oluşturmak için cmdlet'ini kullanırNew-ScheduledJobOption. komutu WakeToRun parametresini kullanır ve sonuçta elde edilen nesneyi değişkene $options kaydeder.

$Options özelliklerini nesne olarak almak için, ikinci komut tüm Windows PowerShell nesnelerinin PSObject özelliğini ve Properties özelliğini kullanır. Komut daha sonra özellik nesnelerini cmdlet'ine Sort-Object aktarır. Bu komut, özellikleri ada göre alfabetik düzende sıralar ve ardından bir tablodaki Format-Table özelliklerin adlarını ve değerlerini görüntüleyen cmdlet'ine aktarır.

Bu biçim, içindeki ScheduledJobOptions nesnesinin $options WakeToRun özelliğini bulmayı ve değerinin olarak $false değiştirildiğini doğrulamayı $trueçok daha kolay hale getirir.

Parametreler

-ContinueIfGoingOnBattery

İş çalışırken bilgisayar pil gücüne geçerse (AC güç bağlantısı kesilirse) zamanlanan işi durdurmayın. Varsayılan olarak, bilgisayar AC güç bağlantısını kestiğinde zamanlanmış işler durur.

ContinueIfGoingOnBattery parametresi, zamanlanmış işlerin StopIfGoingOnBatteries özelliğinin değerini olarak $trueayarlar.

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

-DoNotAllowDemandStart

İşi yalnızca tetiklendiğinde başlatın. Kullanıcılar, Görev Zamanlayıcı'daki Çalıştır özelliğini kullanarak işi el ile başlatamaz.

Bu parametre yalnızca Görev Zamanlayıcı'yı etkiler. Kullanıcıların işi başlatmak için cmdlet'ini Start-Job kullanmasını engellemez.

DoNotAllowDemandStart parametresi, zamanlanmış işlerin DoNotAllowDemandStart özelliğinin değerini olarak $trueayarlar.

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

-HideInTaskScheduler

İşi Görev Zamanlayıcı'da görüntülemeyin. Bu değer yalnızca işin çalıştığı bilgisayarı etkiler. Varsayılan olarak, zamanlanmış görevler Görev Zamanlayıcı'da görünür.

Bir görev gizli olsa bile, kullanıcılar Görev Zamanlayıcı'da Gizli görevleri göster görünümü seçeneğini belirleyerek görevi görüntüleyebilir.

HideInTaskScheduler parametresi, zamanlanmış işlerin ShowInTaskScheduler özelliğinin değerini olarak $falseayarlar.

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

-IdleDuration

İş başlamadan önce bilgisayarın ne kadar süreyle boşta olması gerektiğini belirtir. Varsayılan değer 10 dakikadır. Bilgisayar IdleTimeout değerinin süresi dolmadan önce belirtilen süre boyunca boşta değilse, zamanlanan iş varsa, bir sonraki zamanlanan saate kadar çalışmaz.

Cmdlet tarafından New-TimeSpan oluşturulan bir gibi bir TimeSpan nesnesi girin veya timeSpan nesnesine otomatik olarak dönüştürülen hours>:<minutes>:<seconds> biçiminde bir değer <girin.

Bu değeri etkinleştirmek için StartIfIdle parametresini kullanın. Varsayılan olarak, zamanlanmış işlerin StartIfNotIdle özelliği olarak $true ayarlanır ve Windows PowerShell IdleDuration ve IdleTimeout değerlerini yoksayar.

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

-IdleTimeout

Zamanlanan işin bilgisayarın ne kadar süreyle boşta olmasını bekleyeceğini belirtir. Bilgisayar IdleDuration parametresi tarafından belirtilen süre boyunca boşta kalmadan önce bu zaman aşımı süresi dolarsa, varsa iş bir sonraki zamanlanan saate kadar çalışmaz. Varsayılan değer bir saattir.

Cmdlet tarafından New-TimeSpan oluşturulan bir gibi bir TimeSpan nesnesi girin veya timeSpan nesnesine otomatik olarak dönüştürülen hours>:<minutes>:<seconds> biçiminde bir değer <girin.

Bu değeri etkinleştirmek için StartIfIdle parametresini kullanın. Varsayılan olarak, zamanlanmış işlerin StartIfNotIdle özelliği olarak $true ayarlanır ve Windows PowerShell IdleDuration ve IdleTimeout değerlerini yoksayar.

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

-MultipleInstancePolicy

Sistemin, işin başka bir örneği çalışırken zamanlanmış bir işin örneğini başlatma isteğine nasıl yanıt vereceğini belirler. Varsayılan değer şudur: IgnoreNew. Bu parametrenin kabul edilebilir değerleri şunlardır:

  • IgnoreNew - Yeni iş örneği yoksayılır.
  • Parallel - Yeni iş örneği hemen başlar.
  • Queue - Yeni iş örneği, geçerli örnek tamamlandıktan hemen sonra başlar.
  • StopExisting - İşin geçerli örneği durur ve yeni örnek başlar.

İşi çalıştırmak için, iş zamanlaması için tüm koşulların karşılanması gerekir. Örneğin RequireNetwork, IdleDuration ve IdleTimeout parametreleri tarafından ayarlanan koşullar karşılanmazsa, bu parametrenin değerinden bağımsız olarak iş örneği başlatılmaz.

Type:Microsoft.PowerShell.ScheduledJob.TaskMultipleInstancePolicy
Accepted values:None, IgnoreNew, Parallel, Queue, StopExisting
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequireNetwork

Zamanlanmış işi yalnızca ağ bağlantıları kullanılabilir olduğunda çalıştırır.

Bu parametreyi belirtirseniz ve ağ zamanlanan başlangıç zamanında kullanılamazsa, iş varsa bir sonraki zamanlanmış başlangıç zamanına kadar çalışmaz.

RequireNetwork parametresi, zamanlanmış işlerin RunWithoutNetwork özelliğinin değerini olarak $falseayarlar.

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

-RestartOnIdleResume

Bilgisayar boşta olduğunda zamanlanmış bir işi yeniden başlatır. Bu parametre, bilgisayar etkin hale gelirse (boşta durumundan çıkar) çalışan bir zamanlanmış işi askıya alan StopIfGoingOffIdle parametresiyle çalışır.

RestartOnIdleResume parametresi, zamanlanmış işlerin RestartOnIdleResume özelliğinin değerini olarak $trueayarlar.

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

-RunElevated

zamanlanmış işi, işin çalıştığı bilgisayardaki Yönetici istrators grubunun bir üyesinin izinleriyle çalıştırır.

Zamanlanmış bir işin Yönetici istrator izinleriyle çalışmasını sağlamak için, kimlik bilgisi parametresini Register-ScheduledJob kullanarak işin açık kimlik bilgilerini sağlayın.

RunElevated parametresi, zamanlanmış işlerin RunElevated özelliğinin değerini olarak $trueayarlar.

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

-StartIfIdle

Bilgisayar IdleTimeout parametresi tarafından belirtilen süre dolmadan önce IdleDuration parametresi tarafından belirtilen süre boyunca boşta kalırsa zamanlanmış işi başlatır.

Varsayılan olarak IdleDuration ve IdleTimeout parametreleri yoksayılır ve bilgisayar meşgul olsa bile iş zamanlanan başlangıç zamanında başlar.

Bu parametreyi belirtirseniz ve bilgisayar zamanlanan başlangıç zamanında meşgulse (boşta değilse), varsa, iş bir sonraki zamanlanmış başlangıç zamanına kadar çalışmaz.

StartIfIdle parametresi, zamanlanmış işlerin StartIfNotIdle özelliğinin değerini olarak $falseayarlar.

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

-StartIfOnBattery

Bilgisayar, zamanlanmış başlangıç zamanında piller üzerinde çalışıyor olsa bile zamanlanmış işi başlatır. Varsayılan değer şudur: $false.

StartIfOnBattery parametresi, zamanlanmış işlerin StartIfOnBatteries özelliğinin değerini olarak $trueayarlar.

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

-StopIfGoingOffIdle

İş çalışırken bilgisayar etkin olursa (boşta değilse) çalışan bir zamanlanmış işi askıya alır.

Varsayılan olarak, bilgisayar etkin olduğunda askıya alınan zamanlanmış bir iş, bilgisayar yeniden boşta kaldığında devam eder. Bu varsayılan davranışı değiştirmek için RestartOnIdleResume parametresini kullanın.

StopIfGoingOffIdle parametresi, zamanlanmış işlerin StopIfGoingOffIdle özelliğinin değerini olarak $trueayarlar.

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

-WakeToRun

İşi çalıştırabilmesi için bilgisayarı zamanlanmış başlangıç zamanında Hazırda Beklet veya Uyku durumundan uyandırır. Varsayılan olarak, bilgisayar zamanlanan başlangıç zamanında Hazırda Beklet veya Uyku durumundaysa, iş çalışmaz.

WakeToRun parametresi, zamanlanmış işlerin WakeToRun özelliğinin değerini olarak $trueayarlar.

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

Girişler

None

Nesneleri bu cmdlet'e yöneltemezsiniz.

Çıkışlar

Microsoft.PowerShell.ScheduledJob.ScheduledJobOptions

Bu cmdlet, oluşturulan seçenekleri temsil eden bir ScheduledJobOptions nesnesi döndürür.

Notlar

  • Cmdlet'in ScheduledJobOption parametresinin Register-ScheduledJobdeğeri olarak oluşturan ScheduledJobOptions nesnesini New-ScheduledJobOption kullanabilirsiniz. Ancak ScheduledJobOption parametresi, ScheduledJobOptions nesnesinin özelliklerini ve değerlerini belirten bir karma tablo değeri de alabilir; örneğin:

    @{ShowInTaskScheduler=$False; RunElevated=$True; IdleDuration="00:05"}