0

我正在尝试将 powershell 命令的输出写入文件。我已经完成了这个:

powershell psake "Dev08, Deploy-things" >> C:\Deployments\DeploymentLog.txt 2>&1

这是将所有屏幕输出转储到文件中......太棒了!

现在,我也希望它也转储到控制台屏幕。我使用了参数 >CON 但它会将所有内容转储到屏幕上,而不是文件。

powershell psake "Dev08, Deploy-things" >> C:\Deployments\DeploymentLog.txt 2>&1 >CON

也许 >CON 不是要走的路。这是我正在使用的测试:

目录 > c:\test\directory.txt 2>&1

任何人都知道如何做到这一点????

4

2 回答 2

0

不要让 CMD 输出文件,而是让您的 Powershell 命令使用Tee-Objectcmdlt 来完成。

因此,对于您的情况,例如:

powershell ^& "'C:\Program Files\7-Zip\7z.exe'" ^| tee B:\test.log

请注意,^之前是必需的,|以便将其传递给 Powershell 并且不会按字面意思解释。

于 2012-05-11T20:56:01.673 回答
0

好吧,事实证明,我找不到任何可以在命令提示符中写入 2 个不同输出的内容。将输出重定向到文件后,就可以重定向它。而已。我也找不到任何使用命令写入屏幕的方法。所以,我使用的解决方案是下载“TailXP”。将其安装在盒子上并将其配置为指向我正在编写的文件。这将在生成文件时读取文件并将其写入它自己的控制台屏幕。它达到了我们的目的,我将它们全部打包在一个 .cmd 文件中。

于 2012-05-15T15:22:48.323 回答