多个powershell脚本输出到同一文本文件

时间:2017-08-01 11:13:09

标签: powershell

我有一组ps脚本,我会称之为父母,调用其他ps脚本,我会称他们为子。他们都需要写入同一个文本文件,我将调用 myoutfile.txt 。父脚本的第一个输出应清除 myoutputfile.txt 。所有后续子ps脚本都应附加到 myoutputfile.txt ,包括逻辑中稍后的另一个父脚本。

使用Out-File,父PS脚本打开并锁定文件 myoutputfile.txt 。子PS脚本需要附加到文件中,但由于父文件创建了文本文件,因此子PS脚本无声地无法附加到文本文件中。

我尝试过Out-File和Add-ContentAdd-Content将中文输出到文本文件中。

2 个答案:

答案 0 :(得分:1)

带有追加或添加内容的Out-File都可以使用。 除非你真的想写中文,the encoding could be wrong.

$File ="PathTo\test.txt"
Get-Date | Out-File $File -Encoding ascii
"TEXT" | Out-File $File -Append -Encoding utf32
Add-Content -Path $File -Value "END" -Encoding Unicode

正如您在文件中看到的,结果因编码而异。 如果你得到中文,我猜是字节。 早期可能存在转换问题。

答案 1 :(得分:0)

Peter Schneider的评论和Martin van Delft的答案让它得以实现。