管道到多个位置 - PowerScript

时间:2014-07-08 21:21:25

标签: powershell output pipe

我想做这样的事情 -

"Error array cleared." | Out-File $ErrorLog $InfoLog -Append

然而它无法正常工作。这是否可以在不写另一行的情况下将其输出到另一个文件?

3 个答案:

答案 0 :(得分:2)

您也可以使用Tee-Object来完成同样的事情。查看该页面上的示例3。这是一个快速示例,它抓取当前目录的内容并将其保存到两个文件中。

Get-ChildItem | Tee-Object -FilePath teetest.txt | Out-File teetest2.txt

答案 1 :(得分:1)

一种方法是使用这样的短函数:

function Out-FileMulti {
  param(
    [String[]] $filePath
  )
  process {
    $text = $_
    $filePath | foreach-object {
      $text | out-file $_ -append
    }
  }
}

示例:

"Out-FileMultiTest" | Out-FileMulti "test1.log","test2.log"

(将字符串“Out-FileMultiTest”写入test1.log和test2.log)

答案 2 :(得分:0)

找到了我需要的代码片段 -

“测试”| %{write-host $ ; out-file -filepath $ ErrorLog -inputobject $ -append}