【问题标题】:How to subscribe for "user enter command to prompt" event in powershell?如何在powershell中订阅“用户输入命令提示”事件?
【发布时间】:2013-08-16 02:41:26
【问题描述】:

我想实现我输入到 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 命令后保存历史记录(并在开始时复制最后一条记录)。

【问题讨论】:

标签: powershell


【解决方案1】:

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

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

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

【讨论】:

  • 1) 它为您的会话创建脚本。所以你可以搜索等。但我正在寻找增量方式来保存跨会话的历史记录。所以我可以输入类似“#cp”的内容,然后找到一条带有一些长路径的副本记录。 2) 在 powershell_ise stackoverflow.com/questions/5032075/… 中不起作用
猜你喜欢
  • 1970-01-01
  • 2013-02-08
  • 1970-01-01
  • 2023-03-25
  • 2022-08-04
  • 1970-01-01
  • 2010-09-09
  • 2016-02-12
  • 1970-01-01
相关资源
最近更新 更多