web-dev-qa-db-ja.com

PowerShellセッションに個別の履歴を使用する

私はMicrosoftの PowerShell を使用してマシンにリモート接続し(通常は OpenSSH Windowsの場合)、 Git リポジトリを管理し、 VS)でコマンドを実行しますコード (およびその他のもの)。

私は通常、コマンド履歴を使用して戻って、リモート処理するSSHコマンドを選択しますが、GitまたはVS Codeとの長いセッションの後、SSH履歴はかなり古くなります。異なる履歴ファイルを使用してPowerShellを起動し、タスクごとにコマンド履歴が異なるようにする方法はありますか?

%AppData%\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txtに保存された履歴ファイルがあるため、セッションの別の場所に設定できる環境変数またはコマンドラインスイッチがある可能性があります( バッチ ファイルを介してPowerShellを起動することにより)例)。

3
user

Set-PSReadlineOption を使用して履歴ファイルの場所を設定できます。切り替えたい場合は、次のような.ps1ファイルをいくつか作成できます。

History1.ps1を含む

Set-PSReadlineOption -HistorySavePath 'C:\Users\Hali\Desktop\History1.txt'

DefaultHistory.ps1を含む

Set-PSReadlineOption -HistorySavePath 'C:\Users\Hali\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt'

それらのエイリアスを作成します。例えば:

Set-Alias -Name History1 -Value 'C:\<path to>\History1.ps1'
Set-Alias -Name DefaultHistory -Value 'C:\<path to>\DefaultHistory.ps1'
3
lx07