【发布时间】:2017-01-04 13:01:02
【问题描述】:
我是 PowerShell 新手,所以这可能很明显,或者我用我的方法找错了树。但是在这里搜索和谷歌并没有帮助我(也许搜索错误的术语?)
我正在尝试编写一个简单的 PowerShell 脚本(工作/运行没有问题)。但是,我还需要将过程(命令运行和任何输出)记录到我正在努力实现的 txt 文件中。我尝试使用 start-transcript 并添加 -verbose 通用参数,但它没有像我预期的那样工作。
我的最终目标是让脚本在我们的一台服务器上运行,这将停止服务,停止服务的任何相关进程,然后再次启动服务。但是对于这个无法记录正在发生的事情的示例,我将其简化为只是启动和停止一个进程。我的例子如下:
Start-Transcript -path "C:\tester.txt"
Write-Host "starting the shell command"
Start-Process notepad -verbose
Start-Sleep -s 5
Stop-Process -processname notepad -verbose
Stop-Transcript
脚本运行,记事本打开,等待 5 秒钟,然后再次关闭。但是,详细输出仅为 stop-process 命令创建,这只会导致 write-host 消息和 stop-process 被写入我的事务/日志文件。但是我需要它写入我的记事本进程已启动然后停止的文件。
【问题讨论】:
-
您的 PowerShell 版本是什么?我希望这会显示您运行的命令,但它不适合我,所以我正在测试。
-
您是否在 ISE 中运行此程序?我得到与你相似的结果。它实际上在 PowerShell 提示符下工作。所以这将是一个错误或现状。不确定是哪个。尝试在常规 PowerShell 中运行它
-
@Matt - 我也尝试从常规 powershell 运行脚本,但得到相同的结果。
-
@Matt - 我有以下版本。主要 - 5,次要 - 1,内部版本 - 14393,修订版 576
-
是的。这也发生在我身上。如果从 shell 运行命令会发生什么......而不是脚本。我复制并粘贴了您的代码,它有效。不是答案,而是故障排除。
标签: powershell