Linuxのaliasコマンドで別名(エイリアス)を登録する方法!便利な使い方を紹介!
Linuxは、コマンドを打ち込むだけでさまざまな操作が可能ですが、反面コマンドやオプションを延々と入力するデメリットもあります。そこでおすすめするのが便利なaliasコマンドです。Linuxではaliasを登録して、コマンドやオプションを楽に入力できるのです。
目次
- 1Linuxにおけるaliasコマンドとは?
- ・aliasは別名に置き換えることができるコマンド
- ・aliasコマンドの有効期間
- 2Linuxのaliasコマンドで別名を登録する方法
- ・別名(エイリアス)を登録するには.bashrcに記述
- 3Linuxのaliasコマンドの便利な使い方
- ・既存のaliasを確認する方法
- ・複数コマンドを一度に実行する
- ・変数を使用する
- ・aliasコマンドは上書き可能
- ・aliasコマンドは元のコマンド名も指定できる
- 4Linuxのaliasコマンドを解除する方法
- ・unaliasコマンドの使い方
- 5Linuxのalias・unaliasコマンドのオプション
- ・aliasコマンドで使えるオプション
- ・unaliasコマンドで使えるオプション
- 6Linuxのaliasコマンドで別名(エイリアス)を登録してみよう!
Linuxにおけるaliasコマンドとは?
Linuxにはaliasというコマンドがあり、これを使うことでコマンドやオプションを別名(エイリアス)で登録できます。aliasで別名を設定することで、長いコマンドとオプションをタイプミスすることなく、短いコマンド名の別名で便利に利用できるのです。
aliasは別名に置き換えることができるコマンド
Linuxのaliasを利用すると、各種コマンドを別名(エイリアス)で登録できます。このとき、1行コマンドであれば、どんなに長いコマンドであっても登録できるので、実質的には複数のコマンドをひとつのaliasに設定することも可能です。しかも、変数を与えることもできますから、Linuxのaliasは、Windowsのbatファイルのように利用できます。
aliasコマンドの有効期間
aliasコマンドで別名(エイリアス)を設定するには、ふたつの方法があります。ひとつはコマンドラインからaliasコマンドで登録する方法で、もうひとつは「.bashrc」で設定する方法です。このうち、コマンドラインからaliasコマンドで登録した場合には、登録された別名(エイリアス)を利用できる期間が限定されています。
リセットされるタイミング
Linuxのaliasコマンドで設定した別名(エイリアス)は、以下のタイミングでリセットされます。
- ターミナルの画面を閉じる
- ログアウトする
- コンピュータをシャットダウンする
この状態で次にターミナル画面を開いたときには、前回設定したエイリアスを使おうとすると、あらためてaliasコマンドで設定し直さなければなりません。
Linuxのaliasコマンドで別名を登録する方法
Linuxにおいてaliasで各種コマンドを別名(エイリアス)で設定するには、以下のように入力します。
- alias ll='ls -l'
するとそれまで存在しなかった「ll」というコマンドが新たに設定され、「ll」と入力することで、「ls -l」を入力したのと同じ結果が返されます。
別名(エイリアス)を登録するには.bashrcに記述
しかし、Linuxのターミナルを立ち上げるたびに、こうした別名(エイリアス)コマンドをaliasで入力するのは面倒なものです。そこでおすすめするのが、「.bashrc」にaliasコマンドを登録することです。
「.bashrc」にaliasコマンドを記述することで、ターミナルが起動するたびに「.bashrc」内のaliasコマンドが読み込まれるので、毎回aliasコマンドを入力することなく、設定したaliasコマンドを便利に利用できます。Linuxで「.bashrc」にaliasコマンドを設定するには、viエディタを利用します。
Linuxのターミナルを立ち上げ、「vi ~/.bashrc」と入力し、「i」を入力してインサートモードに入り(画面下に「-- INSERT --」と表示されます)、エイリアスを入力します。今回は「cls」に画面をクリアする「clear」コマンドを設定するので、「alias cls='clear'」と入力します。
viエディタを終了するには、「Esc」キーを押してインサートモードから抜け、「:wq」(write & quitの意)と入力してファイルを保存・終了します。このとき、「:q」(quitの意)と入力すると、ファイルを保存せずにviを終了します。ただしこの上で、Linuxでは立ち上げ時に「.hashrc」を読み込むように「.hash_profile」で指定する必要があります。
「.hashrc」を作成したのと同様にターミナル画面で「vi ~/.bash_profile」と入力して、「i」を入力してインサートモードに入り、最下行に「source ~/.bashrc」と追加し、「Esc」キーを押してインサートモードから抜け、「:wq」と入力してファイルを保存・終了します。そして、あらためてターミナルで「~/.bash_profile」と実行します。
これで、「.hashrc」が読み込まれ、「cls」がエイリアスとして読み込まれます。もちろん、ターミナルを終了して立ち上げ直しても、「cls」はエイリアスと設定されたまま利用し続けられます。
Linuxのaliasコマンドの便利な使い方
ここまで、Linuxでの基本のaliasコマンドの使い方について触れましたが、ここからはaliasコマンドをさらに便利に使う方法をお伝えします。
既存のaliasを確認する方法
まずはLinuxで、既にaliasコマンドで登録された別目(エイリアス)を確認する方法です。既に登録した別名(エイリアス)を確認するには、ただaliasコマンドを単独で入力するだけです。すると、既にaliasコマンドで登録した別名(エイリアス)が一覧表示されます。
このとき確認できるのは、コマンドラインでaliasコマンドを使って登録したものだけではなく、「.hashrc」内でaliasコマンドを使って登録したものも一緒に確認できます。
複数コマンドを一度に実行する
Linuxのaliasでは、1行にまとめられてさえいれば、複数のコマンドであっても一度に実行が可能です。たとえば、「applica」というサブディレクトリを作成し、そのなかに「applica.txt」というファイルを作り、ちゃんとファイルが作成されたかを確認する、というコマンドを「a1」というエイリアスで作成することを考えます。この場合、
- alias a1='mkdir applica;touch applica/applica.txt;ls applica'
と、各Linuxコマンドを1行にまとめて、aliasで「a1」に別名(エイリアス)登録します。
その上でaliasによって設定されたコマンド「a1」を実行します。すると、applicaディレクトリが作成され、その中にapplica.txtが作られていることが確認できます。
こうして複数のコマンドをまとめてaliasで別名(エイリアス)コマンドを作成しておけば、同じ作業を繰り返す場合でも、必要なディレクトリに移動してaliasで作成したコマンドを入力するだけで済むのでとても便利です。
変数を使用する
Linuxのaliasは、環境変数を使用することも可能です。先ほど使用した「a1」のaliasを少し変更して、ディレクトリとテキスト名を環境変数「t」で指定することにします。この場合、環境変数には「$」を付記して、
- alias a2='mkdir $t;touch $t/$t.txt;ls $t'
と指定します。
aliasでa2が設定できたら、環境変数tを設定してからa2を実行します。今回は環境変数「t」に「test」を用いました。すると、testディレクトリに「test.txt」が作成されたことが確認できました。
ただし、aliasでは環境変数を利用することはできますが、引数を利用した「a2 test」というような使い方はできません。引数を使えるのは関数なので、この辺りは間違えないようにしてください。この点は、Windowsのbatファイルが便利さでaliasに勝るところです。
aliasコマンドは上書き可能
aliasコマンドは、同名で指定することで別名(エイリアス)コマンドを上書きできます。たとえば、「alias ll='ls -l'」と設定していたものを、「alias ll='ls -a'」と入力するだけで、「ll」というコマンドを上書きできます。下図のように確認すると、コマンドが上書きされていることがわかります。
aliasコマンドは元のコマンド名も指定できる
Linuxのaliasコマンドでは、既に存在するコマンド名も別名(エイリアス)コマンドとして指定できます。下図はlsコマンドに「ls -a」を充てた場合ですが、lsと打つだけで、オプションが自動に付加できるので非常に便利です。もちろんこの状態でもlsの本来のオプションを付加できます。
この方法は極めて便利で、grepやlessコマンドに「--color=auto」オプションをつけてaliasを作成するのは非常によく見られるやり方です。また、そのままでは無条件で上書きをしてしまうmvやcpコマンドで上書き確認の「-i」やバックアップを作成する「-b」オプション付けてaliasを作成する例も多く見られます。
ただし、こうしたaliasの便利さに慣れすぎると、自分のaliasを設定していないLinuxの環境下で、確認不足のままオプションを付けずにmvやcpコマンドを実行してしまい、取り返しのつかない事態を招くこともありますので、aliasの便利さに溺れないよう、気をつけてください。
Linuxのaliasコマンドを解除する方法
ここまでLinuxでaliasコマンドを使って別名(エイリアス)コマンドを作成する方法をお伝えしてきました。これに対し、今度はLinux上でaliasを使って設定したコマンドを解除する方法をお教えします。
unaliasコマンドの使い方
unaliasは、aliasコマンドで設定したコマンド名を指定すれば、別名(エイリアス)コマンドを解除できます。下図のように、aliasコマンドで設定された「cls」コマンドを解除するには、
- unalias cls
とするだけです。unaliasでclsコマンドを解除したあとで、「alias」と入力すると、「cls」コマンドが解除されているのが確認できます。
Linuxのalias・unaliasコマンドのオプション
さて、ここまでLinuxのaliasとunaliasコマンドについて説明してきましたが、このふたつのコマンドにも一応オプションがあります。一応というのは、少なくともaliasのオプションはあまり意味がないためです。
aliasコマンドで使えるオプション
Linuxのaliasには一応「-p」というオプションがあります。
現在の内容を再利用可能な書式で出力できる【-p】
aliasの「-p」オプションは、登録されているaliasの内容を再利用可能な形で出力できるオプションです。「再利用可能」ということは、ターミナルを立ち上げてaliasで追加した別名(エイリアス)コマンドを、パイプやリダイレクトを使って「.hashrc」に追加すればそのままで利用できるということです。
そう聞くと非常に便利そうなオプションに聞こえますが、実質はオプションなしでaliasを利用した場合と同じ結果が返ってきます。したがって、わざわざ「-p」オプションを覚える必要はありません。
ただし、正確には「-p」オプションのあるなしでaliasコマンドの動作がわずかに変わるのも事実です。いま、別名(エイリアス)コマンドがひとつだけ設定している状態で、「-p」コマンドを付けずに新たにaliasで別名(エイリアス)コマンドを設定すると、下図のようにコマンドが追加されます。
ところが「-p」オプションをつけると、それまでに設定された別名(エイリアス)コマンドが表示された上で、新たな別名(エイリアス)コマンドが追加されます。確かにオプションの有無で表示結果は違いますが、あまり役に立たない違いといえるでしょう。
unaliasコマンドで使えるオプション
aliasの使えないオプションに比べると、unaliasの「-a」オプションはかなり便利です。
現在の内容を全て削除できる【-a】
unaliasの「-a」オプションは、現在設定されているすべての別名(エイリアス)を削除するオプションです。不要な別名(エイリアス)コマンドをひとつひとつ削除するのではなく、まとめて削除できる便利なoptionです。
- unalias -a
なお、Linuxのunaliasコマンドによる別名(エイリアス)コマンドの削除は、aliasコマンド同様、以下のタイミングでリセットされます。
- ターミナルの画面を閉じる
- ログアウトする
- コンピュータをシャットダウンする
そのため、すべての別名(エイリアス)コマンドを削除した状態であっても、次にターミナル画面を開くと、「.hashrc」で設定された別名(エイリアス)コマンドは自動的に復活します。
Linuxのaliasコマンドで別名(エイリアス)を登録してみよう!
以上、Linuxで別名(エイリアス)コマンドを登録できるaliasコマンドと、それを削除するunaliasコマンドについて説明しました。aliasコマンドを使うことで、面倒なオプションを省けたり、長いコマンド名を短くできたり、複数コマンドをひとまとめにしたり、mvやcpでの無条件でお上書きなどの危険を回避したりできます。
本記事を参考に、aliasコマンドを便利に利用して、Linuxを簡単かつ安全に運用してください。