为另一个用户登录注册任务

时间:2016-10-05 17:34:02

标签: windows powershell scheduled-tasks

我作为Admiministrator运行一个powershell脚本,我想为其他用户注册一个计划任务,以便在登录时运行。

以下powershell代码将为Adiministrator用户注册一个事件:

$action = New-ScheduledTaskAction -Execute 'C:\Windows\System32\notepad.exe'
$trigger = New-ScheduledTaskTrigger -AtLogOn
Register-ScheduledTask -Action $action -Trigger $trigger -TaskName "NotepadLaunch" -Description "Launch notepad at logon"

我看到New-ScheduledTaskTrigger支持-User选项: https://technet.microsoft.com/en-us/library/jj649821.aspx

User<String>

Specifies the identifier of the user for a trigger that starts a task when a user logs on.

不幸的是,文档不是很清楚,它似乎没有像我期望的那样工作(将用户设置为触发操作的位置)。

我的问题:是否可以在安排任务时指定其他用户?

还有其他合适的替代方法可以设置在另一个用户登录时启动的命令(假设我使用管理员用户设置命令)?

1 个答案:

答案 0 :(得分:0)

在Server 2012和Powershell 3.0上测试

$action = New-ScheduledTaskAction -Execute 'C:\Windows\System32\notepad.exe'
$trigger = New-ScheduledTaskTrigger -AtLogOn -User "DOMAIN\username"
Register-ScheduledTask -Action $action -Trigger $trigger -TaskName "NotepadLaunch" -Description "Launch notepad at logon" -User "DOMAIN\username"