/root/.bashrc の sudo コマンド使用設定を作成する方法

/root/.bashrc の sudo コマンド使用設定を作成する方法

特に.bashrcいくつかのエイリアスをカスタマイズしました。llexport LS_OPTIONS='--color=auto'

残念ながらと一緒に使うとうまくいかなかったのでsudoこれも修正しましたが/root/.bashrcあまり差がないようです。

sudo envディスプレイHOME=/rootSHELL=/bin/bash

sudo設定を使用してコマンドを取得するにはどうすればよいですか/root/.bashrc

私はbashこれがインタラクティブに実行されたときにのみ発生することを知っているので、それをカスタマイズする方法に関する別の提案で開いています。

ベストアンサー1

sudoシェルコマンドの代わりに実行可能ファイルを実行します。したがって、エイリアスについては知りません。sudo ls同様に実行すると、ユーザーが持つエイリアスはsudo /bin/ls使用されません。ls

sudo ls以下を に入れてエイリアスを拡張できます.bashrc

alias sudo='sudo '

末尾のスペースに注意してください。エイリアス拡張に次の単語を使用し続けるようにシェルに指示しますsudo。 sudoの後にエイリアスを拡張することは、エイリアスの種類によっては常に良い考えではないかもしれません。

また、sudoは環境からほとんどの変数を削除します。alias ls='ls $LS_OPTIONS'これはコマンドを拡張するときにシェルが使用するシェル変数なので、同じエイリアスには影響しません(エクスポートは.bashrc効果がありません)。ただし、これはコマンドで使用される変数に影響します。たとえば、LS_COLORSsudoの設定を編集して、特定の環境変数を維持するようにsudoを設定できます。実行しvisudo、次の行を追加します。

Defaults env_keep += "LS_COLORS"

この設定では、sudo llおなじみの色が得られます。

またはsudo -s。シェルは設定ファイル(~/.bashrcbashの場合)をロードします。 sudoの設定方法に従ってHOMEホームディレクトリに設定する/root。を使用してホームディレクトリをrootに設定できますsudo -Hs。代わりに元のホームディレクトリを保持するには、を実行しますsudo env HOME="$HOME" bash

おすすめ記事