お兄ちゃん!
前回「エイリアス(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行のコマンドで書く必要があるんだ複数行の処理をコマンドのように扱いたかったら関数にするのがいいよ!