Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

whoami in python [duplicate]

Tags:

python

posix

What is the best way to find out the user that a python process is running under?

I could do this:

name = os.popen('whoami').read()  

But that has to start a whole new process.

os.environ["USER"] 

works sometimes, but sometimes that environment variable isn't set.

like image 791
Josh Gibson Avatar asked May 13 '09 20:05

Josh Gibson


People also ask

How do you use Whoami in Python?

This function checks the environment variables LOGNAME, USER, LNAME and USERNAME, in order, and returns the value of the first one which is set to a non-empty string. If none are set, the login name from the password database is returned on systems which support the pwd module, otherwise, an exception is raised.

How do I find the home directory in Python?

Use os module to get the Home Directory path. expanduser('~') to get the home directory in Python. This also works if it is a part of a longer path like ~/Documents/my_folder/. If there is no ~ in the path, the function will return the path unchanged.


1 Answers

import getpass print(getpass.getuser()) 

See the documentation of the getpass module.

getpass.getuser()

Return the “login name” of the user. Availability: Unix, Windows.

This function checks the environment variables LOGNAME, USER, LNAME and USERNAME, in order, and returns the value of the first one which is set to a non-empty string. If none are set, the login name from the password database is returned on systems which support the pwd module, otherwise, an exception is raised.

like image 84
Ayman Hourieh Avatar answered Sep 24 '22 21:09

Ayman Hourieh