ラズベリーパイでエイリアスを設定して、いつも使うコマンドを使いやすくしてみましょう。
長いコマンド名を短くしてみたり、いつも使うコマンドとオプションとを合わせたもののエイリアスを登録しておくと、コマンドラインで実行するときの手間がずいぶん省けます。
この記事では、エイリアスの設定方法について書きます。
エイリアスとは
エイリアス(alias)とは、コマンドの別名のことです。
Rasbpianにおいても、LX Terminalで直接実行できるコマンドはたくさんあります。
しかし、そのコマンド名が長かったり、あるいはコマンドを実行するときにいつも使うオプションがたくさんあったりするときに、それらをいつもキーボードから打ち込むのが面倒なことがあります。
そんなときは、エイリアスを設定して、使いやすくしましょう。
エイリアスを書く場所はここです
エイリアスの設定は、.bashrcに記述します。
もっとも、これはログインシェルにbashを使用していることが前提です。
ラズベリーパイにRaspbianをインストールして、その後とくにログインシェルの変更していなければ、bashが使用されているはずですので、この.bashrcに記述すればOKです。
このファイルの中での記述する場所は、自分の好きなところでよいですが、ここではファイルの末尾に追記することにしましょう。
leafpadやemacsなどのエディタで、.bashrcを開きます。
スポンサーリンクこのファイルは、ピリオドで始まるファイル名になっているので、隠しファイルです。ホームディレクトリでファイル名を直接 leafpad .bashrc や emacs .bashrcなどと打つか、ファイラを使用する場合は隠しファイルを表示する設定にしてから選んでください。
開いたらファイルの末尾に移動しておいてください。
エイリアスの書式
エイリアスは、以下の書式で記述します。
- alias [エイリアス名]=”エイリアスの内容”
かぎ括弧([])は不要です。
例えば,「leafpadというコマンドはスペルが少し長いので、leafという省略した名前で実行したい」、という場合は、次のようなエイリアス設定にするとよいでしょう。
1 | alias leaf="leafpad" |
これを、.bashrcの末尾に追記し、保存します。
エイリアスは、オプションなどを含めてももちろん構いません。leafpadは、タブ幅をコマンドラインで設定できる仕様になっていますが、例えばタブ幅をいつも2で使用したい場合は、
1 | alias leaf="leafpad --tab-width=2" |
と設定すればよいです。
エイリアスの動作確認
.bashrcは、書き込むだけではすぐに反映されません。書き込んだ後に、LX Terminalから
1 | $ source ~/.bashrc |
というように、sourceコマンドでこの.bashrcを再読み込みする必要があります。
こうしておいてから、同じくLX Terminal上で
1 | $ leaf |
と打ち込むと、leafpadコマンドを実行したときと同じように実行されます。
ただし、別のLX Terminalを起動するときは、起動直後に.bashrcを自動で読み込みますので、sourceコマンド実行は不要です。
あると便利なエイリアスの例
エイリアスの実例をいくつかご紹介します。
使えそうなものがあれば、早速.bashrcに記述して、試してみましょう。
ls コマンドの実行結果を見やすくするエイリアス
lsコマンドの実行結果を見やすくするエイリアスを3つ書きます。
1 2 3 | alias ls='ls -FN --color' alias la='ls -aFN --color' alias ll='ls -lFN --color' |
いずれも、lsの実行結果が色分けして表示されます。
どのエイリアスにも、-Fオプションと-Nオプションがついています。
-Fオプションはディレクトリ名の末尾に/(スラッシュ)、リンク名の末尾には@、実行可能なファイルの末尾には*(アスタリスク)がつけられるなど、ファイルやディレクトリのいくつかの属性を区別するインディケータを付与するオプションです。
-Nオプションは制御文字を含むファイル名もそのまま表示するオプションです。
エイリアスlaには-aオプション、エイリアスllには-lオプションをつけています。
エイリアスlaは、隠しファイルを含めたすべてのファイルを表示するとき、エイリアスllはロングフォーマットでlsを実行し、ファイルのパーミッションやファイルサイズ、タイムスタンプ、ファイルのownerやgroupを表示するときに使用します。
rm/cp/mv コマンドを安全に実行するエイリアス
rmコマンドを実行するとき、すぐにファイルが消去されるので、少し不安になることがあると思います。
同様に、cpコマンドやmvコマンドも、コピー先や移動先に指定した名前と同じ名前のファイルがあったときには、すぐに上書きされてしまいます。
このように、すぐに消去されたり上書きされたりすることが心配な場合は、-iオプションをつけて実行しましょう。
すると、消去や上書きをするときに、「○○を削除しますか?」や「○○を上書きしますか?」というように問い合わせが返ってくるようになります。
yを押せば実行しますし、nを押せば実行されません。
この1ステップが入ることで、誤操作を防げます。
1 2 3 | alias rm='rm -i' alias cp='cp -pi' alias mv='mv -i' |
エイリアスの例は以上です。いずれも-iオプションをつけて、元のコマンドと同じ名前のエイリアスにしました。
ただし、一つ注意。このエイリアスを設定すると、例えばたくさんのファイルをワイルドカードで消去するときに、すべてyキーで答えていたら面倒だ、ということがあります。
そのときは
1 | $ \rm *.log |
というように、コマンドの前に\(バックスラッシュ)をつけてください。これで、エイリアス設定はこの実行に限り無効になります。
.bashrcの再読み込みを簡単に行うエイリアス
.bashrcは、編集したら再読み込みをしなければなりませんが、source…を都度打ち込むのは面倒です。
1 | alias sc='source ~/.bashrc' |
のように、エイリアスを登録しておくと、scと打つだけでよくなり、便利です。
不要なバックアップファイルを掃除するエイリアス
emacsを使用していると、編集したときのバックアップファイルや、編集中の一時ファイルが残っていることがあります。
ファイル名の両端が#で囲まれていたり、ファイルの末尾が~(チルダ)であるようなファイルです。
このようなファイルがカレントディレクトリにあるとき、それらを一斉に消去するのが以下のエイリアスです。
1 | alias dust='rm -f #*# *~ .*~' |
カレントディレクトリ中にある各サブディレクトリのサイズランキングを表示するエイリアス
最後は、duコマンドの使用例です。
カレントディレクトリにあるすべてのサブディレクトリのサイズを調べ、それをサイズの大きい方から順に並べて表示するエイリアスです。
1 | alias du1='du --exclude="./.*" --max-depth 1|sort -rn' |
ディレクトリの整理をするときに重宝しますので、是非試してみてください。