我正在尝试修改群集计划任务的操作 - 它需要运行的文件已更改位置,因此我想修改schtasks作业以反映这一点。
我一直在尝试以下几行,但它不起作用......
$ClusterScheduledTaskName = "CLUS - CheckDB-Prod"
$ClusterScheduledTaskAction = New-ScheduledTaskAction -Execute "powershell" -Argument "-file S:\DBA\BatchJobs\Live\Scripts\DBA\Backups\CheckDB_Servers-All_set_to_backup.ps1 -dbbackuptype ALL_DATABASES -backuplist S:\DBA\BatchJobs\Data\CheckDB-Prod.txt"
set-ClusteredScheduledTask -TaskName $ClusterScheduledTaskName -Action "$ClusterScheduledTaskAction"
错误是:
Set-ClusteredScheduledTask : Cannot bind argument to parameter 'Action', because PSTypeNames of the argument do not match the PSTypeName required by the parameter:
Microsoft.Management.Infrastructure.CimInstance#MSFT_TaskAction.
At line:1 char:72
+ set-ClusteredScheduledTask -TaskName $ClusterScheduledTaskName -Action "$Cluster ...
+ ~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Set-ClusteredScheduledTask], ParameterBindingArgumentTransformationException
+ FullyQualifiedErrorId : MismatchedPSTypeName,Set-ClusteredScheduledTask
任何人都可以给我任何关于我出错的指示吗?
由于
答案 0 :(得分:0)
因为您在“$ ClusterScheduledTaskAction”周围有引号,Powershell正在尝试扩展变量的内容。如果删除引号,则应该没问题。另外别忘了设置触发器!
set-ClusteredScheduledTask -TaskName $ClusterScheduledTaskName -Action $ClusterScheduledTaskAction