powershell PowerShell的终了时にコマンド履歴を保存して开始时に复元
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了powershell PowerShell的终了时にコマンド履歴を保存して开始时に复元相关的知识,希望对你有一定的参考价值。
# PowerShell終了時の処理を登録
Register-EngineEvent ([System.Management.Automation.PsEngineEvent]::Exiting) -Action {
# historyが保存してあったら読み込む
$savedHistories = @()
if (Test-Path $historyFilePath) {
$savedHistories = Import-Clixml $historyFilePath
}
$currentHistories = history
# 現在のシェルのhistoryと保存してあるhistoryの差分を抽出
$additions = Compare-Object $savedHistories $currentHistories -Property CommandLine | ? {
$_.SideIndicator -eq "=>"
} | % {$_.CommandLine}
$newHistories = $currentHistories | ? {$additions -contains $_.CommandLine}
# いい感じにソートしつつマージを行う
$historiesToSave = ($savedHistories + $newHistories) | sort -Unique -Descending CommandLine | sort StartExecutionTime
# historyを保存
$historiesToSave | Export-Clixml $historyFilePath
Write-Host "see ya!"
} | Out-Null
# historyの復元
if (Test-Path $YourHistoryXmlFilePath) {
Import-Clixml $YourHistoryXmlFilePath | Add-History
}
以上是关于powershell PowerShell的终了时にコマンド履歴を保存して开始时に复元的主要内容,如果未能解决你的问题,请参考以下文章
在python脚本中运行powershell脚本,如何让python在运行时打印powershell输出
powershell PowerShell脚本,用于创建在计算机启动时运行choco升级的计划任务
powershell是啥
尝试使用 Powershell 对 LDAP 进行搜索时出错
在捆绑链执行结束时运行 PowerShell 脚本
当 PowerShell 脚本失败时,我都有哪些选择?