我需要从Task Scheduler中为SharePoint在线运行PowerShell脚本。脚本:
该脚本可在PowerShell中完美运行。我无法使其在我的机器上运行。没有错误消息,或C:/上的输出文件。
可以在本地计算机上运行此脚本吗?
答案 0 :(得分:0)
不是很确定如何运行,但是要回答您的问题:是的,如果您安装了PowerShell和所有必需的库,它就可以。如果尚未设置执行策略,则可能需要设置该策略,并以具有足够权限的用户身份运行脚本。
检查以下问题和答复: How to run a PowerShell script
答案 1 :(得分:0)
要运行PowerShell脚本,您需要执行以下两项操作之一。将执行策略更改为“ RemoteSigned”(必须在此计算机上创建脚本)或“ Unrestricted”(不推荐),因为默认情况下它将设置为“ Restricted”,这将不运行任何脚本。第二个选项忽略执行策略。首先,请打开\编辑原始的powershell脚本,并使用以下语法将其封装:“ powershell -ExecutionPolicy ByPass {脚本代码在这里}”此外,如果您想查看在生成时是否生成错误,运行计划的任务,则需要添加此参数“ -NoExit”。控制台关闭的原因是,默认情况下,计划任务在后台控制台中运行脚本,此脚本将在之后立即关闭,您需要使用“ -NoExit”命令使其保持打开状态。但是,如果保留“ -NoExit”参数,则每次任务运行时它将保持打开所有这些控制台的状态。因此,请确保在脚本成功运行且没有错误的情况下将其删除。
封装的脚本语法示例:
powershell -ExecutionPolicy ByPass {
# Original script code here
}
封装的脚本,可防止控制台关闭语法示例:
powershell -ExecutionPolicy ByPass -NoExit {
# Original script code here
}
创建计划任务:
通过按“ Windows键+ R” 来打开Task Scheduler,这将弹出运行对话框,并在“打开”文本框中键入“ taskschd.msc” < / strong>
单击“创建任务” ,然后在“名称”字段中键入您要为此任务指定的名称。然后确定要使用的安全选项,以管理员身份运行,请使用“以最高权限运行”选项。
点击“触发器” 标签,然后点击“新建” 。在这里,您可以从下拉菜单中选择开始任务的位置,默认情况下,按计划选择。然后,选择所需的频率,时间和其他高级设置。
点击“操作” 标签,然后点击“新建” ,对于操作在下拉列表中保留为“启动程序” 强>。在“程序/脚本”文本框中,键入“ powershell.exe” ,在“添加参数(选项)”字段中,键入-文件“完整文件路径” ,并添加左引号和右引号。示例:-文件“ C:\ Users \ Public \ Documents”
点击“条件” 标签,并在大多数情况下保留默认设置或选择其他条件。
单击“设置” 标签,通常默认设置是正确的,但您可以根据需要选择其他设置。
https://blog.netwrix.com/2018/07/03/how-to-automate-powershell-scripts-with-task-scheduler/