将参数传递给 Schtasks

将参数传递给 Schtasks

我如何从命令行运行 schtasks,以便在运行时传递参数。我有一个批处理作业,它在运行时需要参数,它是在计划任务中创建的。我不能有固定的参数,所以当我第一次创建任务时,我无法提供参数,我需要在运行时提供它。我希望是否有办法做到这一点,我需要使用命令行从 schtasks 运行此任务,因为我可以将任务设置为以管理员身份运行,并让具有较少角色的用户按需调用任务

schtasks /Run /Tn "task" /parameter....?

答案1

以下是使用 传递参数的示例schtasks

schtasks /create /tn "test" /TR "\"C:\Program Files\SyncToy 2.1\SyncToyCmd.exe\"-R" /sc daily /st 08:00:00

答案2

否 – 参数是在任务本身内配置的。

从安全角度来看,我也不太相信这是可行的——假设某人正在运行cmd.exe一个带有特定参数的任务,而那些参数在执行时被非管理员用户修改了?这可不是什么好情况。

答案3

另一种解决方案可能是让您的 powershell 脚本将批处理作业所需的参数或数据打印到文本文件中,然后让批处理作业在运行时从文本文件中读取。

不过,我会考虑 Shane Madden 的评论,任何有权写入此文本文件并执行计划任务的人,都有权修改该进程的行为

相关内容