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 $true
değ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 $true
ayarlar.
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 $true
ayarlar.
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 $false
ayarlar.
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 $false
ayarlar.
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 $true
ayarlar.
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 $true
ayarlar.
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 $false
ayarlar.
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 $true
ayarlar.
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 $true
ayarlar.
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 $true
ayarlar.
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-ScheduledJob
değeri olarak oluşturan ScheduledJobOptions nesnesiniNew-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"}
İlişkili Bağlantılar
- Add-JobTrigger
- Disable-JobTrigger
- Disable-ScheduledJob
- Enable-JobTrigger
- Enable-ScheduledJob
- Get-JobTrigger
- Get-ScheduledJob
- Get-ScheduledJobOption
- New-JobTrigger
- New-ScheduledJobOption
- Register-ScheduledJob
- Remove-JobTrigger
- Set-JobTrigger
- Set-ScheduledJob
- Get-ScheduledJobOption
- Unregister-ScheduledJob
PowerShell
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin