c-note wrote:
Bonjour,
je cherche un moyen "propre" d'obtenir la liste des utilisateurs (au sens personne et non pas utilisateur apache, ntp, ...) d'une machine Linux.
En BASH, on peut faire :
cat /etc/passwd | grep "/home" | grep "/bin/bash" | awk -F: '{print $1}'
Passer par la commande système Python n'est pas à mon gout très élégant :-)
Y a t-il un moyen plus simple ?
Merci
A noter qu'on peut sous Linux utiliser le module pwd, avec les fonctions
getpwall (), getpwnam () et getpuid()
Par exemple :
import pwd
users = [ u.pw_name for u in pdw.getpwall()
if u.pw_shell = "/bin/bash" and u.pw_dir.startswith ("/home") ]
Cela ne resout pas l'identification d'un utilisateur physique mais simplifie la syntaxe.