質問: 複数のsudoおよびsuコマンドを使用して元のユーザーを見つけるにはどうすればよいですか? sudoまたはsuを介してスクリプトを実行するときに、元のユーザーを取得したい。これは、複数のsudoまたはsuが相互に実行され、具体的にはsudo su -。
回答: 結果:つかいます who am i | awk '{print $1}' or logname。他の方法は保証されていません。自己としてログイン:evan> echo $user evan evan> echo $sudo_user evan> echo $logname evan evan> whoami evan evan> who am i | awk '{print $1}' evan evan> logname evan evan> 通常の須藤:evan> sudo -s root> echo $user root root> echo $sudo_user evan root> echo $logname root root> whoami root root> who am i | awk '{print $1}' evan root> logname evan root> 須藤su-:evan> sudo su - [root ]# echo $user root [root ]# echo $sudo_user [root ]# echo $logname root [root ]# whoami root [root ]# who am i | awk '{print $1}' evan [root ]# logname evan [root ]# 須藤su-; su tom:evan> sudo su - [root ]# su tom tom$ echo $user tom tom$ echo $sudo_user tom$ echo $logname tom tom$ whoami tom tom$ who am i | awk '{print $1}' evan tom$ logname evan tom$