2017-09-07 4 views
1

내 스크립트새로운-ScheduledTaskAction : 용어 '새-ScheduledTaskAction'는 cmdlet의 이름으로 인식되지 않는

$action = New-ScheduledTaskAction -Execute "BolusDemoDataGenerator.BAT" 
$TaskStartTime = [datetime]::Now.AddMinutes(2) 
$trigger = New-ScheduledTaskTrigger -At $TaskStartTime -Once 

$setting = New-ScheduledTaskSettingSet 
$inputTask = -action $action -trigger $trigger -settings 
Register-ScheduledTask BatchRunTask -InputObject $inputTask 

같은 -하지만 나는

New-ScheduledTaskAction : The term 'New-ScheduledTaskAction' is not 
recognized as the name of a cmdlet, function, 
script file, or operable program. Check the spelling of the name, or if a 
path was included, verify that the path is 
correct and try again. 
At C:\Users\abc\Desktop\hi.ps1:1 char:11 
+ $action = New-ScheduledTaskAction -Execute "BolusDemoDataGenerator.BAT" 
+   ~~~~~~~~~~~~~~~~~~~~~~~ 
+ CategoryInfo   : ObjectNotFound: (New-ScheduledTaskAction:String) 
[], CommandNotFoundException 
+ FullyQualifiedErrorId : CommandNotFoundException 

확실하지 오류를 얻고있다 무엇이 잘못 되었습니까?이 powershell 스크립트를 실행하여 작업 스케줄러에서 바탕 화면에있는 박쥐 파일을 실행하는 작업을 만들려고했습니다.

+4

cmdlet으로 사용하는 PowerShell 버전은 PowerShell 4.0에서만 사용할 수 있습니다. '$ PSVersionTable.PSVersion'을 사용하여 버전을 결정할 수 있습니다. – Itchydon

+0

Mazor 4 minor 0 Build -1 Revision-1 – Ashu

+0

이 경우'Import-Module ScheduledTasks' 모듈을 가져 오기 시도하십시오 – Itchydon

답변

1

PowerShell 4.0 a 예약 된 작업은 새 cmdlets New-ScheduledTaskAction, New-ScheduledTaskTriggerRegister-ScheduledTask으로 쉽게 만들 수 있지만 이전 버전에서는 사용할 수 없습니다 (PSVersion$PSVersionTable).

이전 버전에서는 사람들이 schtasks.exe 명령을 호출하는 많은 예제를 찾을 수 있습니다.

외부 실행 파일을 호출하지 않고 PowerShell에서 가능한 많은 작업을 수행하려면 Task Scheduler’s com object for creating a scheduled task을 사용할 수 있습니다.

# Open the Task Scheduler com object 
$service = new-object -ComObject("Schedule.Service") 
+0

Powershell 4.0을 사용 중입니다. – Ashu

+0

중고 스케줄러의 com 개체가 정상적으로 작동합니다. – Ashu

관련 문제