0

私が通常のユーザーであると仮定しましょう。私はルートに切り替わります:

user ~ $ su - root
Password: 
root ~ #

したがって、としてログインしたら、次のコマンドを自動的に実行しrootたい:

source .bash_profile

どうすればそれabove commandを自動的に実行できますか?

4

2 に答える 2

1

bash の man ページによると、.bash_profileはログイン シェルに対して.bashrc実行され、 はインタラクティブな非ログイン シェルに対して実行されます。

あなたの場合、.bash_profileこのようなソースを作成する必要はありません。

source .bash_profileルートの.bashrcファイルに入れるだけです

if [ -f ~/.bash_profile ]; then
   source ~/.bash_profile
fi

との理解を深めるために読んでください.bash_profile.bashrc

アップデート

例:

[root@sgeorge-ld ~]# cat .bashrc | tail -1
echo "Testing .bashrc for a stack query"
[root@sgeorge-ld ~]# exit
logout
[sgeorge@sgeorge-ld ~]$ su - root
Password: 
Testing .bashrc for a stack query
[root@sgeorge-ld ~]# 
于 2013-02-04T04:29:53.907 に答える
0

まず、root ユーザーに切り替えても、通常のユーザーのホーム ディレクトリのままです。どの .bash_profile を実行しますか? /Users/myuser/.bash_profile またはルートの /var/root/.bash_profile?

何を実行したいかは関係なく、/var/root/.bashrc を編集して (ない場合は作成してください)、そこにコマンドを追加できます。

于 2013-02-04T04:26:49.297 に答える