メインコンテンツまでスキップ

PowerShellプロファイルの肥大化

· 約3分
mebiusbox
engineer

PowerShellが便利なので、さまざまな関数やコマンドレットをプロファイルに追加していったら、肥大化して少し問題になりました. ここでは、それに関する備忘録を残しておきます.

PowerShellでも色んなことができるので、ちょっとしたことは可能ならPowerShellで処理するようにしています. そういったものはスクリプトとして作成せずに、関数やコマンドレットとして作成していました. ところが、PowerShellプロンプトを開くたびにコマンドが打てるまでの時間が長くなってしまいました. プロファイルの読み込み時間が表示されるので確認してみると10秒以上かかっています. さすがに長く感じてきたので、対処することにしました.

具体的には、もともといくつかのモジュールに分けていて、プロファイルですべてをインポートしていたのですが、それをやめて必要最小限にとどめました. そして、必要であればモジュールをインポートする形に変更しました.結果、プロファイルの読み込みが2秒ぐらいになり、快適になりました. その反面、必要になるたびにモジュールを手動でインポートする手間が発生するようになりました. もちろん、インポートを手軽にできるように工夫してこの手間も最小限にしています.

機能ごとにスクリプトを1つ作成して呼び出すのは、結局管理が大変になりそうなので、今はこのやり方で落ち着いています.

以上です.