- masaya fukuda
- Aug 22, 2018
- Tags
エイリアス(alias)について
linuxで作業する際にひっそりとお世話になっている、エイリアス(alias)について記事にまとめてみました。
■はじめに
linuxで作業を行っているとき、ディレクトリ内を確認する際、「ls -l」と実行する方法、「ll」と実行する方法があると思います。
こちらは結果はどちらも同じになるのですが、なぜ複数のやり方があるのでしょうか。
■コマンドとオプション
linuxではコマンドを実行する際にオプションを合わせて指定することで表示する内容を詳しくしたり、対象とする範囲を広げたりすることができます。
上記のようにオプションはたくさんあるため、自分で分かりやすくコマンド+オプションに別名を付けてその別名を呼び出して実行することができます。
それがalias(エイリアス)です。
■aliasの確認方法
現在aliasで設定されているコマンドを確認するには「alias」と入力します。
見方としては
alias [実行するコマンド]='<実行するコマンドに割り振るオプション付きのコマンド>' となっています。
■aliasで設定されているもの
よく設定されているaliasを5つ紹介します。
●alias ls='ls --color=auto'
ディレクトリや圧縮ファイルなどに自動で色を付けて区別しやすくなるオプションである「--color=auto」をオプションなしでも実行されるようにしたもの
●alias rm='rm -i'
削除コマンドである「rm」に削除前に確認を行う「-i」コマンドを追加したもの。
削除作業は慎重に行わなければならない作業ですので、デフォルトで確認を行うようにすれば誤削除を防ぐことができます。
●alias ..='cd ..'
現在いるディレクトリから一つ上のディレクトリに移動するコマンド。
よく移動する際は便利なエイリアスとなります。
●alias mv='mv -i'
移動コマンドである「mv」で移動する先に同ファイルがある場合に上書き確認を行う「-i」コマンドを追加したもの。
「-i」コマンドがない場合は問答無用で上書きされてしまうため、こちらも念のためにエイリアスで設定しておくとファイルの喪失を防ぐことができます。
●alias cp='cp -i'
コピーする際にオプションなしでも上書き確認を行うようにするエイリアスです。
焦って作業を行っている場合オプションを付け忘れてしまうなんてことはよくあるため、被害の大きくなる上書きを本当に実行していいか確認できるようにワンクッション入れることはかなり大事です。
■エイリアスで気を付けなければいけない点
よく設定されているエイリアスを紹介しましたが、当然ながら作業を行う端末に必ず設定されているというわけではありません。
まずは作業する前に設定されているかどうかを確認してから作業を行う必要があります。
エイリアスで「rm」に「rm -i」オプションが設定されていると思い込んで「rm」コマンドを実行したら何の確認もなく消えてしまう…なんてことは設定されていなければ当然起こりうる事象となります。
■エイリアスに設定を行う方法
エイリアスに設定を行うのは作業を行う前に「alias [実行するコマンド]='<実行するコマンドに割り振るオプション付きのコマンド>'」を実行することです。
これにより設定したとおりにコマンドが実行できます。
ただ、このやり方は作業しているウィンドウを閉じると設定は消えてしまいます。
しかし、一番初めに書いたとおり、「ls -l」と「ll」と別名のコマンドが存在するのはなぜでしょう。
実は.bashrcファイルに設定を保存することができるのです。
ずっと設定を適用したい場合は「vi ~/.bashrc」で.bashrcファイルに記載を行います。
記載を行った後は「source ~/.bashrc」で変更を反映させます。
■エイリアスを無効にする方法
たとえばファイル削除を行う際にとてもたくさんのファイルを削除するときいちいち1ファイルずつ削除確認をされるとそれだけで作業時間がかかってしまうことがあります。
ですが、その作業のためだけに.bashrcファイルに設定しているエイリアスを消すのはあまり得策ではありません。
そのようなときにファイルにエイリアスを残したまま一時的にエイリアスを無効にする方法があります。
やり方は簡単。コマンドの前に「\」を付けるのみです。
それだけでエイリアスで設定したものは無効になり、通常のコマンドと同様に使用することができます。
■まとめ
一日に何度も打鍵することになるコマンドをエイリアスで別名を付けておくことでミスを減らすことが可能になると思います。
ファイルに書き込まずに自分が作業するときのみ適用させたり、上書き確認などミスを発生させやすいコマンドはあらかじめファイルで設定しておくなど使い分けも重要であると思いました。
とりあえず現在何が設定されているか確認するところから始めるのが吉であると再認識しました。
Comments
Add your comment