お兄ちゃん!
前回「エイリアス(alias)」
という言葉が出てきたね
.bashrc で設定するとかなんとか…
これってどういうものなのかな?
エイリアスはコマンドの別名を作る仕組みだよ
エイリアスを定義すればそのエイリアスを
コマンドのように呼び出せるんだ
へぇ…
便利そう!
ぜひ教えて欲しいなぁ!
alias コマンドalias は
エイリアスを定義するよ
alias エイリアス='実際のコマンド'
ここではエイリアス
ll を定義してみよう!alias ll='ls -l'
ll というコマンドは実際には存在しないけどこのエイリアスを定義するとll を実行したときにls -l が呼び出されるんだね!そのとおり!
ll エイリアスを実際に使ってみよう!ll /tmp
おお!リスト形式で
/tmp の内容が表示されたよls -l と同じだね!エイリアスは長いコマンド名を短くしたりオプションを追加した新しいバージョンを作るのに使われるんだよ
シェルを閉じると定義したエイリアスは消えてしまうよ
毎回
alias で定義するのは面倒だねそこで初期化スクリプト
~/.bashrc に記述するんだ~/.bash_profile ではなく~/.bashrc ということはエイリアスは子プロセスに引き継がれないんだねそういうことだね
~/.bashrc にalias を書いておけばシェル利用時にエイリアス定義をしてくれるというわけなんだ書いたよ!これで次回シェルを起動したときにエイリアスが反映されるんだね!
現在のシェルにも反映させたいのなら
. や source で~/.bashrc を読み込ませよう!. ~/.bashrc
エイリアスって定義したものを頭で覚えておかなきゃならないのかな?たくさん作ると忘れちゃいそう…
それなら
alias を引数なしで実行してみよう現在定義されているエイリアス一覧が表示されるよalias
使わなくなったエイリアスを削除したい場合はどうすればいいのかな?
unalias はエイリアス定義を削除するよunalias エイリアス名
例えば
ll エイリアスを削除するにはこうするよunalias ll
~/.bashrc に alias を記述しているのならそちらの削除も忘れないようにね同じ名前のコマンドとエイリアスがあった場合エイリアスの方が優先されるんだ!
だからディストリビューションの多くは
ls エイリアスが定義されていて便利なオプションをつけてくれているんだねでも
ls エイリアスじゃなく素の ls コマンドを実行したい場合はどうすればいいのかな?その場合はコマンドをパスで指定すればいいよこうすると
ls エイリアスではなくls コマンドを使うんだ/bin/ls /home/midori
今回はコマンドの別名をつけるまたエイリアス関連コマンド
alias, unalias や~/.bashrc にエイリアスを定義することも学んだよ!エイリアスは1行のコマンドで書く必要があるんだ複数行の処理をコマンドのように扱いたかったらシェル関数にするのがいいよ!