![]() |
[BASH] Connaitre les utilisateurs avec un le nom suivant - Version imprimable +- N-PN White-Hat Project (https://dev.n-pn.fr/forum) +-- Forum : Programmation (https://dev.n-pn.fr/forum/forumdisplay.php?fid=72) +--- Forum : Langages interprétés (https://dev.n-pn.fr/forum/forumdisplay.php?fid=27) +--- Sujet : [BASH] Connaitre les utilisateurs avec un le nom suivant (/showthread.php?tid=3567) |
[BASH] Connaitre les utilisateurs avec un le nom suivant - InFamouZz - 27-01-2014 Bonjours a tous ![]() depuis ce matin je bloque sur un script bash j'essaye dans un script bash d'afficher tous les utilisateurs qui portent le nom contenue dans ma variable $user de mon script concrètement dans le fichier /etc/passwd la 5eme colonne contient les nom des utilisateurs, je voudra afficher les lignes qui contiennent $user en 5eme colonne. J'ai réussi a afficher tous les noms d'utilisateurs du fichier /etc/passwd mais je n'arrive pas a implémenter la condition ![]() RE: [BASH] Connaitre les utilisateurs avec un le nom suivant - notfound - 27-01-2014 Salut InFamouZz, perso je passe par awk : Code BASH :
Btw la 5e colonne ce sont des commentaires, pas les noms des users ![]() login:passwd:uid:gid:comment:home ![]() RE: [BASH] Connaitre les utilisateurs avec un le nom suivant - gruik - 27-01-2014 Code BASH :
awk -F':' -vnom=$USER '$5 ~ nom {print $1}' /etc/passwd Code PERL :
perl -F':' -lane 'print $F[0] if $F[4] =~ $ENV{"USER"}' /etc/passwd Code PYTHON :
python -c "print '\n'.join([i.split(':')[0] for i in open('/etc/passwd').readlines() if '$USER' in i.split(':')[4]])" RE: [BASH] Connaitre les utilisateurs avec un le nom suivant - InFamouZz - 27-01-2014 (27-01-2014, 02h07)notfound a écrit : Salut InFamouZz, perso je passe par awk : enfaite j'était pas sur pour la 5eme colonne ^^ car sur ce site : http://www.loligrub.be/contrib/tlepoint/BASE.1/node111.html il disent nom complet donc c'est pas grave commentaire m'arrange ![]() merci de la reponce RE: [BASH] Connaitre les utilisateurs avec un le nom suivant - notfound - 27-01-2014 (27-01-2014, 02h31)InFamouZz a écrit : enfaite j'était pas sur pour la 5eme colonne ^^ car sur ce site : http://www.loligrub.be/contrib/tlepoint/BASE.1/node111.html il disent nom complet Et bien change de site, c'est de la merde. Moi en général j'ai pas de commentaire, donc la colonne 5 est vide ! J'viens de penser que ce code serait encore mieux : Code BASH :
Car si $user = toto et que tu as un autre qui s'appelle totonumber2, ma première réponse va matcher les deux... Ce n'est pas forcément ce que tu veux je crois. @gruik : c'est bien de tout déballer, mais y'en a aucune qui marchent telle quelle pour le coup ... ;) RE: [BASH] Connaitre les utilisateurs avec un le nom suivant - supersnail - 27-01-2014 @notfound: Le site n'a pas tout à fait tort, la plupart des gestionnaires de bureau modernes (Gnome 3, Unity, sûrement KDE aussi et peut-être Mate aussi) se servent du champ "commentaire" pour renseigner le nom complet de l'utilisateur (ainsi que d'autres infos) et s'en servir ensuite pour afficher ces infos dans un indicateur/menu spécial (ainsi que dans le display manager, pour se connecter à la session) RE: [BASH] Connaitre les utilisateurs avec un le nom suivant - notfound - 27-01-2014 Tout à fait oui, mais le site fait passer ça comme un acquis. Or, il peut y avoir de tout dedans, le nom complet (ok) mais pas obligatoirement. Donc affirmer que y'a le nom complet ici, c'est FAUX. Donc quitte à faire des recherches sur google, autant tomber sur des vrais sites pas remplis de connerie :] RE: [BASH] Connaitre les utilisateurs avec un le nom suivant - gruik - 27-01-2014 (27-01-2014, 10h31)notfound a écrit : @gruik : c'est bien de tout déballer, mais y'en a aucune qui marchent telle quelle pour le coup ... comme dit supersnail t'as des managers qui utilisent le champs commentaire pour mettre le nom complet du user genre "Sebastien Ucemoi" pour le user "sucemoi", ce que j'ai compris c'est qu'il voulait par exemple récup tous les users dont le prénom est Sebastien, le tout en utilisant une variable shell, l'un dans l'autre j'ai pris la variable $USER qui induit peut-être en confusion j'admets, vu qu'elle correspond au champs $1 et qu'on la compare au champs $5, bref. quant à tout déballer c'est que j'me faisais tellement chier, alors quand j'ai vu que ça causait technique sur npn tu penses j'me suis jeté dessus comme un chat sur sa paté, bref², on est pas des manches et sur une question aussi noob c'est facile de rectifier/d'adapter, la base est valide RE: [BASH] Connaitre les utilisateurs avec un le nom suivant - notfound - 27-01-2014 (27-01-2014, 13h40)gruik a écrit : comme dit supersnail t'as des managers qui utilisent le champs commentaire pour mettre le nom complet cf. juste au dessus, j'vais pas me répéter. Au besoin lire deux fois. (27-01-2014, 13h40)gruik a écrit : genre "Sebastien Ucemoi" pour le user "sucemoi" *clap clap* (27-01-2014, 13h40)gruik a écrit : j'ai pris la variable $USER Il a plusieurs noms user à mettre, autant ne pas écraser la variable d'environnement qui pourrait servir plus tard. Pour le reste je relèverai pas, c'est du réchauffé avarié. Sujet clos pour ma part ![]() |