1

正如标题所示,我在任务计划程序操作中添加了一个参数,将标准输出和标准错误记录到 log.txt 文件中。当操作通过命令提示符运行时,日志记录有效,但当操作由实际的任务计划程序运行时(在其指定时间)则无效。任务计划程序报告操作成功运行,但我不能确定它是否成功,因为没有日志记录:)

命令看起来像这样

powershell.exe -file "D:\Scripts\TimeSync2.ps1" > "D:\Scripts\timeSync_log.txt" 2>&1

不幸的是,我不是本地 Windows 用户,因此将不胜感激。我正在运行 Windows Server 2008 R2 Enterprise。谢谢!

4

2 回答 2

2

Cmd.exe 处理命令重定向。您必须在 cmd.exe 下运行它。Powershell 可能也可以进行重定向,但在您的脚本中(.NET 可以)。

黑色窗口仅表示控制台程序正在运行。只有当 cmd 正在运行时,cmd 功能才可用。通过启动 cmd 或将其放入批处理中,您可以从 cmd 获得重定向。

cmd /c powershell.exe -file "D:\Scripts\TimeSync2.ps1" > "D:\Scripts\timeSync_log.txt" 2>&1

见帮助

cmd /?
于 2013-11-03T00:27:57.837 回答
0

将您列出的命令放在批处理文件中,然后安排批处理文件。

如果您这样做但失败,请尝试使用您的帐户凭据作为任务计划程序中的身份验证,以查看是否是权限问题。

@echo off
powershell.exe -file "D:\Scripts\TimeSync2.ps1" > "D:\Scripts\timeSync_log.txt" 2>&1
于 2013-11-01T23:08:57.157 回答