我可以通过su -在根控制台上打印获得root权限的用户名吗?
user1$ su - password: obtained root via user1 #
以前我推荐下面的脚本…我find了更好的方法! :)只是执行:
logname
另外,你可以使用$SUDO_USER ,但是如果你使用的是sudo su -
顺便问一下, who am i是who -m是who -m
这个脚本也做这个工作:
#!/bin/bash curpid=`awk '/^PPid:/{print $2}' /proc/$BASHPID/status` ppui=`awk '/^PPid:/{print $2}' /proc/$curpid/status` ppui=`awk '/^PPid:/{print $2}' /proc/$ppui/status` uid=`awk '/^Uid:/{print $2}' /proc/$ppui/status` name=`cat /etc/passwd | grep $uid | awk -F: '{print $1}'` echo $name
如果使用loginshell或.bashrc如果使用交互式非loginshell),则通过.bash_profile调用它。
who am i|awk '{print "Obtained root via "$1}'
将它添加到根的.bashrc以便在执行时执行。
你也可以试试
pstree -p -u |grep "$$"
用用户名来查看整个stream程链。 如果你有多个用户嵌套su ,这可能会很有用。