需求
在所有用户登录时自动运行PowerShell脚本,具体要求将当前用户的用户名和当前时间写在文本文件中。
方案
容易遇到的问题
本文说下,我设置过程中遇到的几个问题。
设置方式
因为是针对所有用户,请在组策略的计算机配置中设置,而不要设置在用户配置中。
路径问题
上面的设置中我们不能像在cmd或者powershell控制台中直接键入powershell或者powershell.exe来启动powershell,而是需要全路径,如I:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
权限问题
日志的路径需要选择一个所有用户都有权限写入的一个路径。
设置值样例
c:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -Command "& { ('time={0},user={1}' -f (get-date),(whoami)) | Out-File "C:\test\RunAll.log" -Append }"
测试用例
测试用例1
注销账户,再使用几个不同的账户登录系统,然后检查日志文件。
PS> Get-Content C:\test\RunAll.log
time=2014/1/13 23:55:15,user=mosser-win7\mosser
time=2014/1/13 23:57:13,user=mosser-win7\test1
time=2014/1/13 23:59:18,user=mosser-win7\mosser
测试用例2
检查普通用户能否禁用或删除上面的配置。
使用组策略配置所有用户登录时自动运行PowerShell脚本
×用微信扫描并分享