somemo programming etc.

プログラマ、雑記、プログラミング関係はLinkから、数式はこっちでまとめていることが多い

【Linux】コマンドの別名

たまにコピー、削除、移動といった上書きしてしまう可能性のあるコマンドに対してaliasを設定していないマシンがあるので、その設定を忘れないようにメモです。

alias

単語からも分かるように、別名をつけるコマンドです。ただし、オプションを付加したコマンドに対しても別名をつけることができます。つまり、最初に述べたコマンドに対して上書きの確認を行うようにしていきます。

まずは、現状の別名を確認します。

alias

alias l.='ls -d .* --color=tty'
alias ll='ls -l --color=tty'
alias ls='ls --color=tty'
alias vi='vim'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

CentOSでは、このように設定されていました。lsで色がついているのは、このおかげです。次に設定です。aliasの確認結果が構文になっていますが、一気に設定することも可能です。

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

毎回実行するのは面倒なので、/etc/bashrcに書いておきます。ユーザ固有に必要であれば、.bashrcに書くと影響が少なくて良いと思います。

unalias

別名を削除することも可能です。

unalias cp rm mv

登録されている別名を削除するには、-aオプションをつけて実行します。ただし、これはCentOSです。CentOS以外では、引数なしで削除できてしまうものもあるようなので気をつけてください。幸い、aliasの実行結果をリダイレクトするだけでバックアップシェルを作ることができます。

一時的に無効にする

登録されている別名を削除する必要はないが、一時的に無効にするには、別名の前に「\」をつけて実行します。

 \ll
bash: ll: command not found

もともと存在しないコマンドは、実行できません。存在するものであれば、もともとの動作を行います。lsであれば、憂い炉がつかずに表示するようになります。