【发布时间】:2013-03-22 22:51:22
【问题描述】:
我无法发布所有脚本内容,但基本思想是它下载 JSON 并使用 ConvertFrom-Json cmdlet 将其转换为对象。一些对象被过滤掉,其余的被写入 XML/XLS 文档(Excel 2003 格式)。然后将此文件附加到电子邮件中并发送给不同的人。
我遇到的问题是它仅在从 Powershell ISE 运行时才有效。一旦我尝试设置一个计划任务,从 cmd 调用它,甚至从 powershell 调用它,附加的文件就完全是空的。就好像某些函数没有运行(循环并创建所有行的函数)。
我暂时可以继续从 ISE 运行,但此脚本的想法是发送一封无需干预的自动电子邮件。关于可能导致此问题的任何想法?
【问题讨论】:
-
您需要找出中断发生的位置。您的计划任务是运行 PoSH v2 还是 v3?您说“好像某些功能无法运行”——您需要对此进行测试!在每个函数中添加一条语句以写入日志文件,指示该函数已被输入。这里真的不足以让我们诊断。您是否在 Windows 事件日志中得到任何信息?
-
如果从 Powershell 调用它不起作用,则通过点源 (. ./script.ps1) 在本地范围内运行它。这将使所有变量都驻留在会话中,您可以开始检查它们以查看它落在哪里。
-
我能够让它工作。原来我使用脚本稍后定义的另一个变量定义了一个变量。搬家后,又开始工作了。谢谢!
标签: powershell cmd scheduled-tasks powershell-3.0 powershell-ise