Linuxのaliasコマンドを活用してみる
Linuxを触っていると毎回同じオプションをつけているようなコマンドが出てきます。
そんなときはaliasを使ってみましょう。
aliasを使うと、特定のオプションを必ずつけて実行したり、長いコマンドを短い名前に置き換えたりすることが可能です。
aliasの使い方
aliasの基本的な使い方は次の通り。
# alias name='command'
たとえば、cpコマンドに-iオプションを必ずつける場合は次のように設定します。
# alias cp='cp -i'
aliasを設定することで、cpコマンドを実行すると、cp -i を実行したことになります。
毎回コマンドで設定するのが面倒な場合は、.bashrcに設定しましょう。
aliasの削除方法
aliasを削除する場合は、unaliasコマンドを利用します。
# unalias cp
aliasの確認方法
現在設定されているaliasを確認する場合は、aliasコマンドで確認が可能です。
# alias alias cp='cp -i' alias l.='ls -d .* --color=auto' alias ll='ls -l --color=auto' alias ls='ls --color=auto' alias mv='mv -i' alias rm='rm -i' alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
aliasに引数を渡す方法
aliasで実行するコマンドに引数を入れたい場合はちょっと注意が必要です。
次のようなエイリアスを作成した場合を考えてみます。
# alias hoge='echo hoge$1'
「hoge test」と実行した場合に期待する結果は「hogetest」が出力されることです。
しかしながら結果は、「hoge test」と半角スペースが出力されてしまいます。
これを回避するためには、関数化する必要があります。.bashrcであれば次のようにすることで対応が可能です。
alias hoge='hoge' function hoge() { echo hoge$1; }
alias活用例
シャットダウンコマンドの前に、かならず実行有無を聞きたい場合は、次のようにすると実現できます。
alias shutdown='shutdown' function shutdown() { read -p "本当によろしいですか?y/n:" boolean;if [ $boolean == y ]; then shutdown $@; fi }
一歩進んで、対象ホスト名を入力してもらい正しい場合のみ再起動をする。なんてことも可能になります。
function shutdown() { read -p "操作対象ホスト名を入力してください:" hn; if [ `hostname` == $hn ]; then shutdown $@; else echo "対象ホスト名が違います。取り違えてないですか?"; fi }
この記事へのコメントはこちら