りなっくすとらずぱい!

Raspberry Pi初心者に向けた各コマンドの説明、プログラムの作り方について紹介しています!

エイリアス(alias)を設定してコマンドを簡単にする方法

f:id:ibuquicallig:20190511231057p:plain

この記事ではエイリアスの設定の仕方と例などを解説しています。

aliasについて

エイリアス(alias)を設定することで、煩雑なコマンドを数文字のコマンドに置き換えることができます。

例えば一つ上の階層のディレクトリに移動するのにcd ../とコマンドを実行しますが、これを..とするだけで実行できるようにできます!

よく実行するコマンドで、キー打鍵数が多ければ多いほどエイリアスで短縮することによって作業効率がぐんぐん上がっていきます。

それでは設定方法と例です😊

.bashrcに追記する

(以下Raspberry Piでデフォルトで設定されているファイルを参考にしながら進めていきます。)

エイリアスを設定するには、対象のユーザーのホームディレクトリにある.bashrcというファイルに追記します。ログインしたときに実行される初期設定用のファイルですね!

ファイルをvimなどで開いて、ちょっと下にスクロールしながら見てみると、コメントアウトされたエイリアスが書かれています。

# some more ls aliases
#alias ll='ls -l'
#alias la='ls -A'
#alias l='ls -CF'

この部分追記していっていいのかもしれないですが、とりあえずファイルの一番下に追加しておきましょう。if節の中でなければ基本どこに書いてもエイリアスは大丈夫です。同名のエイリアスがある場合は、よりファイルの後ろにあるほうが優先(上書き)されます。

書き方

それでは先ほどのcd ../..というエイリアスを設定し見ます。

以下のような感じで.bashrcの最後尾に追加します。

alias ..='cd ../'

書式は、

alias [新しいコマンド]='[省略したいコマンド]'

です。新しいコマンドのほうにはクォーテーションは不要です。

よく使うエイリアス

追加でいくつか私が使っているエイリアスを紹介しておきます!

alias ..='cd ../'
alias grep='grep --color'
alias gcm='git commit -m'
alias ll='ls -lah --color=auto'

llで隠しファイルを表示した状態で縦のファイル一覧を表示します。同じ文字2つなので超高速に入力できるようになります。また、--color=autoオプションを設定することで出力を色付けてくれます。

grepでも同様に色付け用のオプションを追加しています。このようにしてもともと存在しているコマンドと同名のエイリアスを設定することもできます。

gcmはgit操作用のコマンドになっていますが、ほとんど使わなくなってしまいました。gitコマンドって省略してしまうと今自分が何を実行しているかよく分からなくなってしまいます。。(笑)

以下のエイリアスもおすすめです。

alias cp='cp -i'
alias mv='mv -i'
alias rm='rm -i'

いずれもファイル操作系のコマンドで、取り返しのつかないことになる場合(ファイルの上書きなど)に確認のプロンプトを挟んでくれます。

シェルスクリプト内ではエイリアスで設定したコマンドはデフォルトでは無効となるので、上記の確認用のエイリアスを設定してもスクリプトが途中で返事待ちで停止してしまうということないようです。

.bashrcを再読み込みする

.bashrcファイルの修正が完了したら、設定をリロードする必要があります。設定をリロードするというのはちょっと語弊があります。。。追記したコマンドを実行させるという感じですね。

2通り方法がありますが、簡単なのは現在のSSH接続を終了(ログアウト)して、再度ログインしなおすことで反映できます。

もう一つの方法は、bashコマンドで.bashrcファイルを実行する方法です。ファイルの中身はすべてコマンドのスクリプトとなっています。こちらでは現状のセッションを維持しながら設定を反映することができます。

$ bash .bashrc
# もしくは
$ . .bashrc

.コマンド(?)はbashコマンドのエイリアスとなっているので下の方法でもOKです。

これで設定が反映されているはずなので、指定した省略コマンドが正しく動作するか確認出来たら完了です。

(補足)エイリアスだけのファイルを切り分ける

Raspberry Piでデフォルトで設定されているファイルには以下のように記述があります。

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

このように追記することによって、エイリアスの設定をホームディレクトリ内の.bash_aliasesというファイルに切り分けることができます。いろんなユーザーや端末でエイリアスだけを共通化したいときには便利かもしれません。

参考

以下のサイトの情報を引用・参考にしました。