目的
Linuxでroot権限でコマンドを実行したいとき、わざわざrootユーザに変更するのではなく、sudoコマンドを使用することが多いと思います。しかし、通常のsudoコマンドでは、あとに続くコマンドがaliasかどうかチェックされないので、設定したaliasは使用できません。なので、sudoコマンドでもaliasを使用できるようにする設定をご紹介します。
方法
sudoをsudo+半角スペースのaliasとして設定します。
そのために、自身がaliasを設定しているファイルに***alias sudo='sudo '
***を追加してください。または、コマンドライン上で実行してください。
このように設定することで、sudoコマンドでもaliasが使用できるようになります。
仕組み
sudoのあとに半角スペースを入れることによって何が起こるかといいますと、bashのマニュアルには以下のように説明されています。
If the last character of the alias value is a blank, then the next command word following the alias is also checked for alias expansion.
(bashのマニュアルより引用)
つまり、あるaliasを展開(実行)するとき、そのaliasの設定値(シングルクォートで囲まれた部分)の最後の文字が空白(半角スペース)であれば、その次に続くコマンドもaliasかどうかチェックするということです。
例えば、alias ll='ls -l
と設定してsudo ll
を実行すれば、***sudo ls -l
***として展開されます。