2017-05-22 30 views
0

我想将新任务注册到远程服务器。
但是我在Register-ScheduledTask命令中提到-Trigger选项的错误。无法使用PS4将新任务注册到远程服务器

代码

$tasks = @(("script1", "args1", "04:00:00", "name1"), ("script2", "args2", "04:30:00", "name2")) 

$c = New-CimSession -ComputerName "hostname" -Credential "xxx.xxx.xxx.xxx" 

foreach($task in $tasks) { 

    #setting action 
    $action = New-ScheduledTaskAction -CimSession $c -Execute $task[0] -Argument $task[1] -WorkingDirectory "C:\unyo\script\" 

    #setting trigger 
    $trigger = New-ScheduledTaskTrigger -Daily -at $task[2] 

    #register new task 
    Register-ScheduledTask -CimSession $c -TaskPath "\" -TaskName $task[3] -User "SYSTEM" -RunLevel Highest -Action $action -Trigger $trigger 

} 

错误

Register-ScheduledTask : パラメーター 'Trigger' の引数変換を処理できません。値  "Microsoft.PowerShell.ScheduledJob.Sched 
uledJobTrigger" を型 "Microsoft.Management.Infrastructure.CimInstance[]" に変換できません。エラー: "値 "Microsoft.Power 
Shell.ScheduledJob.ScheduledJobTrigger" を型  "Microsoft.Management.Infrastructure.CimInstance" に変換できません。エラー 
: "無効な名前空間です "" 
+ CategoryInfo   : InvalidData: (:)[Register-ScheduledTask]、 ParameterBindingArgumentTransformationException 
+ FullyQualifiedErrorId : ParameterArgumentTransformationError,Register-ScheduledTask 

请让我知道如果你需要更多的信息来解决这个问题。 谢谢。

+0

请将错误翻译为英文。从字符串到'TimeSpan'或'DateTime'的时间转换很可能有错误,无论参数是否为“trigger”。 – Vesper

回答

1

我建议你使用PowerShell远程处理,因为用于注册任务的命令是在远程会话(而不是通过本地计算机的CIM会话)中执行的。

实施例:

$session = New-PSSession -ComputerName "hostname" -Credential (Get-Credential) 

Invoke-Command -Session $session -ScriptBlock { 

$tasks = @(("script1", "args1", "04:00:00", "name1"), ("script2", "args2", "04:30:00", "name2")) 

foreach ($task in $tasks) { 

    #setting action 
    $action = New-ScheduledTaskAction -Execute $task[0] -Argument $task[1] -WorkingDirectory "C:\unyo\script\" 

    #setting trigger 
    $trigger = New-ScheduledTaskTrigger -Daily -at $task[2] 

    #register new task 
    Register-ScheduledTask -TaskPath "\" -TaskName $task[3] -User "SYSTEM" -RunLevel Highest -Action $action -Trigger $trigger 

} 

}

link描述如何启用远程处理。

希望有所帮助。

+0

我可以做我想做的!谢谢你们的快速响应。 – tekun

相关问题