[英]Running a Powershell script from Task Scheduler
我需要在线运行 SharePoint 的任务调度程序中的 PowerShell 脚本。 剧本:
该脚本在 PowerShell 中完美运行。 我无法让它从我的机器上运行。 没有错误信息,或者C:/上的output文件。
这个脚本可以在我的本地机器上运行吗?
不太确定,你如何运行它,但回答你的问题:是的,如果你安装了 PowerShell 和所有必要的库,它可以。 如果您还没有设置执行策略,您可能需要设置执行策略,并使用具有足够权限的用户运行脚本。
检查这些问题和响应: 如何运行 PowerShell 脚本
要运行 PowerShell 脚本,您需要执行以下两项操作之一。 将执行策略更改为“RemoteSigned”(必须在此机器上创建脚本)或“Unrestricted”(不推荐),因为默认情况下它设置为“Restricted”,不会运行任何脚本。 第二个选项忽略执行策略。 首先打开\编辑原始 powershell 脚本并使用以下语法封装它“powershell -ExecutionPolicy ByPass { script code goes here }”此外,如果您想查看运行计划任务时是否生成错误,那么您需要添加此参数“-NoExit”。 控制台关闭的原因是默认情况下,计划任务在后台控制台中运行脚本,然后立即关闭,您需要“-NoExit”命令使其保持打开状态。 但是,如果您保留“-NoExit”参数,那么每次任务运行时它将保持打开所有这些控制台。 因此,当您确定脚本成功运行且没有错误时,请确保将其删除。
封装脚本语法示例:
powershell -ExecutionPolicy ByPass {
# Original script code here
}
使控制台不关闭语法示例的封装脚本:
powershell -ExecutionPolicy ByPass -NoExit {
# Original script code here
}
创建计划任务:
按“Windows键+ R”打开任务计划程序,这将弹出运行对话框,并在“打开”文本框中键入“taskschd.msc”
单击“创建任务”并在“名称”字段中输入您要为此任务指定的名称。 然后确定要使用的安全选项,以管理员身份运行使用“以最高权限运行”选项。
单击“触发器”选项卡,然后单击“新建” 。 在这里,您可以通过从下拉列表中选择开始任务的方式,默认情况下选择按计划。 然后您选择您想要的频率、时间和其他高级设置。
单击“操作”选项卡,然后单击“新建” ,操作在下拉菜单中保留为“启动程序” 。 在“程序/脚本”文本框中键入“powershell.exe” ,并在“添加 arguments(选项)”字段中键入-File“FULL FILE PATH”并添加开始和结束引号。 示例:-文件“C:\Users\Public\Documents”
单击“条件”选项卡并保留大部分默认值或 select 其他条件。
单击“设置”选项卡,通常默认设置即可,但您可以根据需要选择其他设置。
https://blog.netwrix.com/2018/07/03/how-to-automate-powershell-scripts-with-task-scheduler/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.