繁体   English   中英

Powershell 启动脚本错误

[英]Powershell start transcript error

我正在从批处理文件运行 powershell 脚本:

try {
  Start-Transcript -path ("C:\PS\Logs\XXXX_Session_QA_" + (Get-Date).tostring("yyyyMMdd-hhmmss-tt") + ".txt")

  <Rest of the Code>
}
catch {
  stop-transcript
}

每次运行脚本时,我都会看到错误

错误:转录尚未开始。 使用 start-transcript 命令开始转录。

我已经阅读了之前的部分或大部分帖子,代码应该可以工作,但根本没有触发。 也没有创建初始日志文件。 知道为什么会发生这种情况或有任何帮助吗?

您尝试将成绩单写入的位置是否存在文件夹结构? 根据文档,它是必需的(参见下面的斜体):

-小路

指定脚本文件的位置。 输入 .txt 文件的路径。 不允许使用通配符。 如果不指定路径,Start-Transcript 将使用 $Transcript 全局变量值中的路径。 如果您尚未创建此变量,Start-Transcript 会将脚本作为 \\PowerShell_transcript..txt 文件存储在 $Home\\My Documents 目录中。

如果路径中的任何目录不存在,则命令失败。

https://technet.microsoft.com/library/05b8f72c-ae3b-45d5-95e0-86aa1ca1908a(v=wps.630).aspx

当然,您还需要获得写入该路径的权限。

所以...如果 Start-Transcript cmdlet 抛出错误,那么您将在catch{}块(不可见)中捕获它,然后执行Stop-Transcript

这大概是导致错误消息的实际原因:最终结果是您试图在转录从未开始时停止转录。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM