【问题标题】:Redirect all output to a file in PowerShell将所有输出重定向到 PowerShell 中的文件
【发布时间】:2015-03-24 18:14:20
【问题描述】:

我想将所有输出重定向到一个文件,如下所示:

Write-Error 'bla' *>>  '\\SERVER\s$\Test\test.log'

问题是当我想使用LiteralPath 时,它会失败,因为它试图将路径解析为wildcard path。所以这失败了:

Write-Error 'bla' *>>  '\\SERVER\s$\Test\test[0].log'

在尝试Write-Error 'bla' | Out-File -LiteralPath 时,它不会将错误写入文件,而只会写入控制台。

在文件名中使用特殊字符时,有没有办法在文件中包含所有输出?

【问题讨论】:

    标签: powershell stderr


    【解决方案1】:

    我想我找到了:

    Write-Error 'bla' 2>&1 | Out-File -LiteralPath '\\SERVER\s$\Test\test[0].log' -Append
    

    【讨论】:

      【解决方案2】:

      您可以使用Start-TranscriptStop-Transcript cmdlet:

      Start-Transcript -Path '\\SERVER\s$\Test\test[0].log'
      # Your code
      Stop-Transcript
      

      【讨论】:

      • 这不是我真正想要“修复”这个问题的方式。还有其他管道或重定向输出的方法吗?
      猜你喜欢
      • 2011-10-04
      • 1970-01-01
      • 1970-01-01
      • 2013-07-11
      • 1970-01-01
      • 2012-12-13
      • 1970-01-01
      • 2022-01-24
      相关资源
      最近更新 更多