带有无限循环和睡眠的 Powershell 脚本-好还是坏?

带有无限循环和睡眠的 Powershell 脚本-好还是坏?

因此,我一直在尝试使用任务计划程序以静默模式运行 robocopy,但是每当使用任务计划程序启动新实例时,powershell 或 bat 脚本总会弹出。我找到了一种解决方法,即无限循环运行 robocopy,然后休眠 24 小时。由于同一会话将处于活动状态,因此使用 windowstyle hidden 会使其最小化。这应该在生产测试计算机上运行,​​这些计算机将全天候运行,一年 360 多天,除了更新网络安全证书或停机的一些维护外。

答案1

每天 24 小时无限循环运行的脚本并不是一个好主意。

虽然它可能能够工作,但是一旦脚本因未知原因挂起,它就会终止并停止工作。您不会知道它已经停止工作,在您意识到这一点之前,任务已经一周或更长时间没有运行了。

鉴于您谈论 robocopy,很可能您正在复制文件,这听起来像是备份。

Taskscheduler 仍然是一个更好的选择,但你应该对其进行不同的配置,以免用户受到它的干​​扰。你可以将任务配置为完全隐藏,但这也会带来任务无法启动的风险,而你无法及时注意到这一点。

因此,建议使用备份软件。这可以是 Free File Sync 或类似 veeam 的软件。它们运行时会在后台静默运行,但托盘图标会显示它们正在运行。此外,它们会记录运行时间和是否有任何错误,必要时可以定期检查。真正的备份解决方案(如 veeam)还可以选择通过电子邮件发送故障信息。

相关内容