久しぶりにPowershellの話題。
Powershellのコンソールから操作したコマンド実行・入力の内容を履歴としてCSVに出力して保存しておく…という機会があったので、メモとして残しておきます。
fa-exclamation-circle
【新機能】わからないことはAIに聞いてみよう
質問内容を入力すると、皆さんの疑問にAIがお答えします。
※当機能は現在ベータ版です。 予告なく公開終了する場合があります。
コマンド実行履歴を出力するコマンド
コマンド内容は下記の通り。
Get-History | Export-Csv -Encoding default [ファイルパス]
ファイルパスはどこでもOKです。 ここでは、フォルダ名とファイル名まで指定します。
例えば、Cドライブのtempというフォルダに保存するのであれば、下記の通り。
Get-History | Export-Csv -Encoding default c:\temp\getHistory.csv
fa-exclamation-circle
この記事で解決しなかった疑問は疑問はAIに聞いてみよう
質問内容を入力すると、皆さんの疑問にAIがお答えします。
※当機能は現在ベータ版です。 予告なく公開終了する場合があります。
実行例
上記コマンドを実行した時点で、Powershellのコンソールを開いてから実行するまでの間のコマンド実行履歴が指定したCSVファイルに出力されます。
- Id:実行した順番の通し番号
- CommandLine:実際に実行したコマンド内容
- ExecutionStatus:実行結果
- StartExecutionTime:実行開始時間
- EndExecutionTime:実行終了時間
正常に終了したものはExecutionStatusが「Completed」になってます。 失敗したものは「Stopped」ですね。
スポンサードリンク
これ、オペレーション作業のエビデンスの取得なんかに使えそうです。
Powershellファイルの最後尾なんかにこのコマンドを忍ばせておいて、実行履歴として保存しておく、というような方法が良いのかな。