当社はIT技術のオンライン教育を得意としたセミナー専門会社です。 | 一戸英男

ITエンジニアの技術力UPをお約束します。

Windows PowershellのAliasコマンドでハマった。

Linuxで言うところのshellにalias設定をWindowsで行うことをしたかった。しかしこの設定がWindowsのPowerShellの進化の過程で難しい設定になっていた。1時間位ははまった!でも最後は成功してよかった。

PowerShellのAlias設定は?

一時的な設定と恒久的な設定がある。コマンドは同じだが。とりあえず一時的な設定を案内しよう。

恒久的なPowerShellのAlias設定ファィルの準備

実はこれが大変設定が難しい。1時間もハマって。もうだめかなと諦めかけたがなんとかなりました。どうやらPowerShellの変遷で過去は簡単だったようだが現代の設定は難しい。PowerShellのスクリプトは基本的にデジタル署名しないと実行できない。緩めて使う方法もある。でもそれはやりたくないからデジタル署名を行う。

恒久的なAliasは編集ファイルが変数$profileで確認できる。以下のような感じでパス名を出力してくれます。しかもPowerShellって複数のバージョンを混在できるのでバージョンごとに保存場所が異なる。

PowerShellの実行許可作業はデジタル署名が必要なのだ

自己署名ルート証明書を作成する。これが中々面倒な作業手順オンパレード。PowerShellで実行してください。

次の作業は証明書を PFX ファイルにエクスポートして、後の手順で必要な場所にインポートできるようにする

RootCA によって署名された、サブジェクト名が “SignedByRootCA” の証明書を作成

同様に、署名された証明書を秘密キーと共に PFX ファイルに保存し、公開キーのみを CRT ファイルに保存

PowerShellスクリプトに署名

これでおしまい。$profileに含まれたパスが恒久的なalias設定するパスなのでそこへ署名します

Set-Aliasの設定はこんなかんじかな

設定は無事できました。コマンドは省略して使えたので良かった。めでたしめでたし。