1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
| moi@virtualux:~/Projets$ grep :2000: /etc/group
utilisateur:x:2000:
moi@virtualux:~/Projets$ grep :2000: /etc/group |od -c
0000000 u t i l i s a t e u r : x : 2 0
0000020 0 0 : \n
0000024
moi@virtualux:~/Projets$ getent group |grep :2000:
utilisateur:x:2000:
moi@virtualux:~/Projets$ getent group |grep :2000: |od -c
0000000 u t i l i s a t e u r : x : 2 0
0000020 0 0 : \n
0000024
moi@virtualux:~/Projets$ grep moi /etc/passwd
moi:x:2001:2000:moi,,,:/home/moi:/bin/bash
moi@virtualux:~/Projets$ ./a.sh utilisateur
moi
moi@virtualux:~/Projets$ ./c.sh utilisateur
moi@virtualux:~/Projets$ cat c.sh
#!/bin/bash
for group
do
gawk -F: '
FNR==NR&&$1==g{gid=$3;c=split($4,u,",");for(i in u)v[u[i]]=1;nextfile;next}
gid&&$4==gid{v[$1]=1}
END{m=asorti(v,w);for(i=1;i<m;i++)print w[i]}
' g=$group <(getent group) <(getent passwd)
done
moi@virtualux:~/Projets$ bash --version
GNU bash, version 4.1.5(1)-release (i486-pc-linux-gnu)
moi@virtualux:~/Projets$ gawk --version
GNU Awk 3.1.7 |