2

我想实现我输入到 powershell 的命令的增量历史日志。我发现了很多关于退出时相同历史记录的相关问题。解决方案在这里

Register-EngineEvent -SourceIdentifier powershell.exiting -SupportEvent -Action { Save-History }

我发现它不方便,因为它不适用于多个 tabs/ps 实例。我想要的是调用 Save-HistoryIncremental 附加到现有的 csv 文件历史记录。

但我不知道如何在用户输入命令后立即对该函数进行回调。

解决方法: 我现在最接近的解决方法是更改​​提示:

Rename-Item Function:\prompt oldprompt
function prompt {
    Save-HistoryIncremental
    oldprompt
}

这里的行为是相反的:它在执行 oh 命令后保存历史记录(并在开始时复制最后一条记录)。

4

1 回答 1

1

我不确定我是否完全理解您的要求,但这有帮助吗?

http://jaworskiblog.com/2011/08/05/logging-all-powershell-commands-and-output/

基本上,您将“Start-Transcript”添加到您的 powershell 配置文件中。我认为,即使跨多个 powershell 实例,这也会记录您所做的一切......

于 2013-08-31T13:46:26.453 回答