Linuxのシェルでaliasされたコマンドではなく元のコマンドを実行します。
記事の目次
aliasされたコマンドを確認する!
aliasコマンドを引数なしで実行するとaliasされているコマンドを表示することができます。本稿では、「rm」コマンドにに注目します。
$ alias alias cp='cp -i' alias egrep='egrep --color=auto' alias fgrep='fgrep --color=auto' alias grep='grep --color=auto' 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 vi='vim' alias which='(alias; declare -f) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot' alias xzegrep='xzegrep --color=auto' alias xzfgrep='xzfgrep --color=auto' alias xzgrep='xzgrep --color=auto' alias zegrep='zegrep --color=auto' alias zfgrep='zfgrep --color=auto' alias zgrep='zgrep --color=auto'
aliasされたコマンドを実行する!
aliasされたrmコマンドを実行すると以下のように、削除時にプロンプトが表示されます。
$ mkdir testdir $ touch testdir/test.log $ rm -r testdir rm: descend into directory 'testdir'? y rm: remove regular empty file 'testdir/test.log'? y rm: remove directory 'testdir'? y
aliasを無効化する!(unalias)
シェルを実行する場合は、プロンプトが表示されると困るので、unaliasコマンドで無効化します。
$ alias | grep rm alias rm='rm -i' $ unalias rm $ alias | grep rm $ mkdir testdir $ touch testdir/test.log $ rm -r testdir
aliasを無効化する!(command)
commandコマンドを使用すると、unaliasしなくてもaliasされていない元のコマンドを実行できます。
$ alias | grep rm alias rm='rm -i' $ mkdir testdir $ touch testdir/test.log $ command rm -r testdir
おわりに
コマンドプロンプトでよく使用されるコマンドは、aliasされていることがあります。aliasされているコマンドを使用する場合は、unaliasするかcommandコマンドで元のコマンドを実行します。unaliasは、aliasされていないとコマンドが失敗することに注意しましょう。
関連記事
関連書籍(Amazon)