【生産性向上】WindowsのPowershellでaliasを1行で設定する

WindowsのPowershellを操作する上で生産性を向上させるテクニックをご紹介します。
macの方で既に記事を書きましたが、Windowsでもalias(エイリアス)を設定することで作業効率を向上させることが可能です。似たようなコマンドを毎日打っている方に特に必見のテクニックとなっています。
ネット上ではSet-Alias を使った書き方の記事が溢れていますが、現在の環境ではエイリアスを設定するためにSet-Aliasfunction の2行以上の設定が必要になるので、「functionのみを使ってaliasを設定する」という方法に焦点を当てて、手順とメリットを解説していきます。

もし、Windowsでの開発作業や、コマンドラインの操作を簡単に、かつ効率よくこなしたいと思っているなら、この記事を読むことをオススメします。それでは早速、具体的な設定方法に入っていきましょう。

目次

Powershellでエイリアスを設定する意義

エイリアスを設定することで、長いコマンドやよく使用するコマンドセットを短縮形で実行できるようになります。特に、開発作業を行う上で頻繁に使うコマンドに対してエイリアスを設定しておくことは、作業効率の大幅な向上に繋がります。

例えば、docker-compose コマンドをよく使う方は、以下のような関数を$PROFILEに追加してaliasを設定すると便利です。

function de { docker-compose exec @args bash }
function dd { docker-compose down }
function du { docker-compose up -d }
function db { docker-compose build }
function dps { docker-compose ps }

このように設定することで、例えばdocker-compose execを頻繁に使用する際、わずかdeargsに当たるコンテナ名 を入力するだけで対象のコマンドを実行できるようになります。
引数が存在しないdddu などは関数名だけ入力すればOKなので、入力が最小限で済みます。

設定の方法

では具体的に、Powershellでのalias設定の手順を見ていきましょう。

  1. Powershellを開いて、notepad $PROFILEと入力し実行します。これにより、Powershellのプロファイルファイルをメモ帳で開きます。
  2. メモ帳が開いたら、上記で紹介した関数を追加します。この時点で、あなたの頻繁に使用するコマンドに対してカスタムエイリアスを設定することができます。
  3. 他にもよく使うコマンドがあれば関数名には設定したいalias名、括弧の中にはそのコマンドを入力すれば設定が可能です。
  4. すべての追加が終わったら、ファイルを保存し閉じます。
  5. Powershellのウィンドウを閉じてから再度開くと、設定したエイリアスが利用可能になります。

Set-Aliasとの違い

PowershellではSet-Aliasコマンドを使用してもエイリアスを設定することができます。しかし、Set-Aliasを使用すると、エイリアスの設定に加えてコマンドの実体を定義するために関数を書く必要があり、結果的に記述が複雑になります。

具体的には1例を挙げると下記のような設定になります。

function docker-compose-up { docker-compose up -d }
Set-Alias -Name du -Value docker-compose-up

やっていることは-Nameでaliasを設定しているのですが、関数名を-Valueで紐づけて、中身はfunctionで書く必要があるという非効率な記載の方法になっています。

反面、関数のみでエイリアスを設定することで、エイリアスの管理や設定変更が非常に簡単になります。

まとめ

WindowsのPowershellでのエイリアス設定は、開発者やITプロフェッショナルの生産性向上に非常に役立つツールです。特に関数を使用したエイリアスの設定は、その簡単さと効率性からおすすめの方法です。

この記事が、より効率的な作業環境の構築に役立てば幸いです。
Powershellを使った開発や管理作業を日々行う皆さんにとって、作業時間の短縮や精度の向上に貢献できればと思います。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

アキレアソフト代表の大山亮です。

週休完全4日の会社を設立するべく色々事業を進めています。
スキル:EM/PjM/フルスタックエンジニア/1on1/管理職

週休完全4日の野望に協力してくれる方も募集しています。
投資も趣味でやってます。

コメント

コメントする

目次