如何在Bash中获得当前用户的用户名?我用whoami吗?
当前回答
在大多数Linux系统上,只需在命令行上键入whoami即可提供用户ID。
但是,在Solaris上,您可能必须通过下面的命令确定登录用户的UID来确定用户ID。
echo $UID
一旦知道了UID,就可以通过与/etc/passwd文件匹配UID来查找用户。
cat /etc/passwd | cut -d":" -f1,3
其他回答
使用标准的Unix/Linux/BSD/MacOS命令logname检索登录用户。这忽略了环境和sudo,因为这些都是不可靠的记者。它将始终打印登录用户的名称,然后退出。这个命令大约在1981年就出现了。
My-Mac:~ devin$ logname
devin
My-Mac:~ devin$ sudo logname
Password:
devin
My-Mac:~ devin$ sudo su -
My-Mac:~ root# logname
devin
My-Mac:~ root# echo $USER
root
在命令行中输入
whoami
or
echo "$USER"
两个命令:
Id打印用户Id和组。 格式:uid=usernumber(用户名)… Whoami给出当前用户名
在大多数Linux系统上,只需在命令行上键入whoami即可提供用户ID。
但是,在Solaris上,您可能必须通过下面的命令确定登录用户的UID来确定用户ID。
echo $UID
一旦知道了UID,就可以通过与/etc/passwd文件匹配UID来查找用户。
cat /etc/passwd | cut -d":" -f1,3
在Solaris操作系统中,我使用了这个命令:
$ who am i # Remember to use it with space.
在Linux上——有人已经在评论中回答了这个问题。
$ whoami # Without space