voilou j'ai un fichier list de la forme
Citation :
Alex B abt boatt polesi /home
Eric L lfd lle polesi /home/eci
|
j'aimerais savoir si les utilisateurs presents dans ce fichiers sont des utilisateurs systèmes. S'ils sont absents du /etc/passwd, je l'ai ajoute.
j'ai fais un fichier list.awk pour lister les utilisateurs : awk -f list.awk list
mais comment puis je faire le test si le user est deja present dans /etc/passwd ?
Je peux faire par exemple
Code :
- {
- if ( `cat /etc/passwd | cut -d ":" -f 1 | grep -c $1` = 1)
- {
- print $1 est deja present;
- }
- else
- {
- adduser $1
- }
- }
|
mais je trouve ca un peu cochon.
Y aurait pas moyen de faire un peu plus propre comme par exemple mettre dans la copndition :
Code :
- awk -F":" '{ if ($1=="Alex" ) print $1}' /etc/passwd
|
Alex une chaine chaine mais comment le remplacer par la variable du list.awk
Comment fait on pour utiliser pour les variables dans un autre awk ?
Quel est la solution la plus elegante ?
Message édité par weed le 12-03-2005 à 14:20:15