Souci avec la commande SET

Résolu
Dieng -  
 Dieng -
Bonjour,

J'éssaye de récuperer l'adresse IP à partir de l'adresse MAC, mais aussi de bien verifier que ce message est un Acknowledge du client vars le serveur DHCP:mais le script ne marche pas à partir de l'utilisation de la comande set car apparement le nombre d'arguments maximum pour la commande set est de $1 à $9. alorsque dans mon des logs DHCP, l'adresse MAC qui est mon critère de recherche est à l'emplacement $10. n'exist-il pas une autre alternative pour contourner cela. J'avais éssayé avec awk mais ça ne marche pas aussi.

voici mon script:

#:/bin/sh

IFS=" "

for mac in `cat fichier4.txt`
do
set $ligne
if [ "$10" = "$mac" -a "$6" = "DHCPACK"
then
IP=$8
mois=$1
jour=$2
heure=$3
breack
fi

echo "$user $mac $IP $mois $jour $heure" >> "trace"
done<loghcp.22
done

Mon fichier loghcp est de la forme:

May 14 22:34:37 syslogserver dhcpd: DHCPACK on 132.0.0.24 from 00:12:3f:bd:50:21 (client_ACS) via eth0
(ils sont tous sur la même ligne)

May 14 22:44:37 syslogserver dhcpd: DHCPACK on 132.0.0.24 from 00:19:b9:2f:a5:27 (dell8) via eth0

etc.

et mon fichier4.txt contient:
00:12:3f:bd:50:21
00:19:b9:2f:a5:27
00:12:3f:bd:50:21
00:19:b9:2f:a5:27
00:12:3f:bd:50:21
00:19:b9:2f:a5:27

tandisque le nom d'utilisateur je le récupère tout à fait au début de mon script( que j'ai pas mentionné ici).

Désolé pour ce long message mais je voulais être le plus clair possible.

Merçi de votre aide.
Configuration: Windows 2000
Firefox 1.5.0.11

14 réponses

  1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    Tiens essaie ça, je l'ai un peu remanié :
    #! /bin/sh
    
    printf "%sAdresse MAC%s\t\tAdresse IP%s\tMois%s\tJour%s\tHeure\n" > trace
    
    while read ligne
    do
    grep "$ligne" loghcp.22 | grep DHCPACK >/dev/null
    retval=$?
    if [ "$retval" == 0 ]
    then
    set $(grep "$ligne" loghcp.22)
    IP=${8}
    mois=${1}
    jour=${2}
    heure=${3}
    printf "%s$ligne%s\t$IP%s\t$mois%s\t$jour%s\t$heure\n" >> "trace"
    fi
    done < fichier4.txt
    ;-))
    0
  2. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    J'avais oublié pour ton problème de paramètre supérieur à 10, il suffit de les appeler comme suit :
    echo ${10} ${12} etc...
    ;-))
    0
    1. Dieng
       
      coucou,

      Au fait Jipicy, le script marche finalement. En fait il fallait remplacer les printf par echo " $ligne $IP £mois $jour $heure" >> "trace". A quoi sert ton premier printf?
      Mais il recherche l'adresse MAc que pour les deux premières lignes.
      t'es vraiment le meilleur ( si je peut te tutoyer).

      J'ai une autre question:
      Comment faire pour automatiser l'exécution du script. Je sais qu'il faut utiliser la commande Crontab, mais le, problème est que je logue mes fichiers par jour et que ce script doit prendre en paramètres deux fichiers de la forme: logacs.x et logdhcp.y avec x et y l'heure dans la journée.

      J'ai pensé un truc du genre donnée l'heure en paramètre lors de l'exécution du script. mais ça non plus ce n'est pas automatique.

      Merçi encore de votre aide.
      0
  3. Dieng
     
    rebonjour,

    J'ai testé le script , mais ya rien dans le fichier Trace.

    Merçi.
    0
  4. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Bizarre :-\

    Voilà ce que ça donne chez moi :
    jp@MDK:~/tmpfs ssh$ cat fichier4.txt
    
    00:12:3f:bd:50:21
    00:19:b9:2f:a5:27
    00:12:3f:bd:50:21
    00:19:b9:2f:a5:27
    00:12:3f:bd:50:21
    00:19:b9:2f:a5:27
    
    jp@MDK:~/tmpfs ssh$ cat loghcp.22
    
    May 14 22:34:37 syslogserver dhcpd: DHCPACK on 132.0.0.24 from 00:12:3f:bd:50:21 (client_ACS) via eth0
    May 14 22:44:37 syslogserver dhcpd: DHCPACK on 132.0.0.24 from 00:19:b9:2f:a5:27 (dell8) via eth0
    
    jp@MDK:~/tmpfs ssh$ cat 2_dieng.sh
    
    #! /bin/sh
    
    printf "%sAdresse MAC%s\t\tAdresse IP%s\tMois%s\tJour%s\tHeure\n" > trace
    
    while read ligne
    do
    grep "$ligne" loghcp.22 | grep DHCPACK >/dev/null
    retval=$?
    if [ "$retval" == 0 ]
    then
    set $(grep "$ligne" loghcp.22)
    IP=${8}
    mois=${1}
    jour=${2}
    heure=${3}
    printf "%s$ligne%s\t$IP%s\t$mois%s\t$jour%s\t$heure\n" >> "trace"
    fi
    done < fichier4.txt
    
    jp@MDK:~/tmpfs ssh$ sh 2_dieng.sh
    
    jp@MDK:~/tmpfs ssh$ cat trace
    
    Adresse MAC             Adresse IP      Mois    Jour    Heure
    00:12:3f:bd:50:21       132.0.0.24      May     14      22:34:37
    00:19:b9:2f:a5:27       132.0.0.24      May     14      22:44:37
    00:12:3f:bd:50:21       132.0.0.24      May     14      22:34:37
    00:19:b9:2f:a5:27       132.0.0.24      May     14      22:44:37
    00:12:3f:bd:50:21       132.0.0.24      May     14      22:34:37
    00:19:b9:2f:a5:27       132.0.0.24      May     14      22:44:37
    
    jp@MDK:~/tmpfs ssh$
    ;-))
    0
    1. Dieng
       
      Rebonjour,

      J'ai vraiment un souci, le script il ne boucle que sur les deux premières lignes. J'ai essayé de le changer mais toujours pareil.
      Je comprends pas d'où vient le problème.

      Merçi encore.
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Affiche une dizaine de lignes de chaque fichiers qu'on puisse tester...
    0
  7. Dieng
     
    Voici le contenu du fichier logacs.20

    May 14 20:00:36 192.168.2.1 CisACS_01_PassedAuth 1rgw406cg 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9
    May 14 20:00:38 192.168.2.1 CisACS_01_PassedAuth 1s0varqch 1 0 Message-Type=Authen OK,User-Name=mathieu@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-B9-2F-A5-27,NAS-Port=6
    May 14 20:01:36 192.168.2.1 CisACS_01_PassedAuth 9353k6ci 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9
    May 14 20:01:38 192.168.2.1 CisACS_01_PassedAuth 9n4abqcj 1 0 Message-Type=Authen OK,User-Name=mathieu@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-B9-2F-A5-27,NAS-Port=6
    May 14 20:02:36 192.168.2.1 CisACS_01_PassedAuth pqgqiuck 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9
    May 14 20:02:38 192.168.2.1 CisACS_01_PassedAuth qafxaecl 1 0 Message-Type=Authen OK,User-Name=mathieu@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-B9-2F-A5-27,NAS-Port=6
    May 14 20:03:36 192.168.2.1 CisACS_01_PassedAuth 16dsdhicm 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9
    May 14 20:03:38 192.168.2.1 CisACS_01_PassedAuth 16xrk92cn 1 0 Message-Type=Authen OK,User-Name=mathieu@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-B9-2F-A5-27,NAS-Port=6
    May 14 20:04:36 192.168.2.1 CisACS_01_PassedAuth 1n140g6co 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9
    May 14 20:04:38 192.168.2.1 CisACS_01_PassedAuth 1nl377qcp 1 0 Message-Type=Authen OK,User-Name=mathieu@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-B9-2F-A5-27,NAS-Port=6
    May 14 20:05:36 192.168.2.1 CisACS_01_PassedAuth 4nd006cq 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9
    May 14 20:05:38 192.168.2.1 CisACS_01_PassedAuth 57c6rqcr 1 0 Message-Type=Authen OK,User-Name=mathieu@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-B9-2F-A5-27,NAS-Port=6
    May 14 20:06:36 192.168.2.1 CisACS_01_PassedAuth laomyucs 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9

    logdhcp.20May 14 20:04:38 syslogserver dhcpd: Wrote 2 leases to leases file.
    May 14 20:04:38 syslogserver dhcpd: DHCPREQUEST for 192.168.0.1 from 00:22:3f:bd:50:21 (Client_ACS) via eth0
    May 14 20:04:38 syslogserver dhcpd: DHCPACK on 192.168.0.1 to 00:22:3f:bd:50:21 (Client_ACS) via eth0
    May 14 20:04:41 syslogserver dhcpd: DHCPREQUEST for 192.168.0.2 from 00:22:b9:2f:a5:27 (toto8) via eth0
    May 14 20:04:41 syslogserver dhcpd: DHCPACK on 192.168.0.2 to 00:22:b9:2f:a5:27 (toto8) via eth0
    May 14 20:34:38 syslogserver dhcpd: DHCPREQUEST for 192.168.0.1 from 00:22:3f:bd:50:21 (Client_ACS) via eth0
    May 14 20:34:38 syslogserver dhcpd: DHCPACK on 192.168.0.1 to 00:22:3f:bd:50:21 (Client_ACS) via eth0
    May 14 20:34:41 syslogserver dhcpd: DHCPREQUEST for 192.168.0.2 from 00:22:b9:2f:a5:27 (toto8) via eth0
    May 14 20:34:41 syslogserver dhcpd: DHCPACK on 192.168.0.2 to 00:22:b9:2f:a5:27 (toto8) via eth0

    voici le script:

    #!/bin/sh
    # decoupage fichier acs
    cat logacs.20 | grep ".*PassedAuth" | awk 'BEGIN{FS=","} {print $2 "," $4}' | awk 'BEGIN{FS=","} {n=split($1,tab,"="); print tab[n] "," $2;}' | awk 'BEGIN{FS=","} {n=split($2,tab,"="); print $1 "," tab[n];}' > fichier.txt
    # transforme l'adresse MAC
    sed -e 's/-/:/g' fichier.txt > fichier1.txt

    while read ligne
    do
    #echo $ligne
    mac=`echo $ligne | tr 'A-Z' 'a-z'`
    echo "$mac" | sed 's/^/0/' >> fichier2.txt

    done < fichier1.txt

    #pour raffraichissement
    #rm -rf fichier1.txt

    # recuperation infos dans fichier logdhcp en fonction @MAC de ACS

    printf "%sUSER%s\t\tMAC%s\t%sIP%s\t\tMOIS%s\tJOUR%s\tHEURE\n" > "trace"

    while read ligne
    do
    grep "$ligne" loghcp.20 | grep "DHCPACK" > verif.txt

    retval=$?
    if [ "$retval" == 0 ]
    then
    set $(grep "$ligne" loghcp.20)
    IP=${8}
    mois=${1}
    jour=${2}
    heure=${3}
    printf "%s$ligne%s\t$IP%s\t$mois%s\t$jour%s\t$heure\n" >> "trace"
    fi
    done < fichier2.txt

    # fin
    0
  8. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Re-

    Change ta ligne :
    echo "$mac" | sed 's/^/0/' >> fichier2.txt
    par :
    echo "$mac" | sed 's/^.* /0/' >> fichier2.txt
    Attention à ne pas oublier l'espace derrière l'étoile (* ).

    Rajoute aussi la variable :
    name=${11}
    et change ton dernier "printf" par :
    printf "%s${name//[!a-zA-Z]}\t%s$ligne%s\t$IP%s\t$mois%s\t$jour%s\t$heure\n" >> "trace"
    Faudra surement ajuster la sortie avec "printf".

    ;-))
    0
  9. dieng
     
    bonjour jipicy,

    je te remerçie ça marche.

    C'est bien vrai que le savoir n'est bon que s'il est partagé!!!!!!
    0
  10. dieng
     
    Rebonjour Jipicy,

    Je reviens pour poser une dernière question.

    Le script marche , mais il ya un petit souci car il recopie chaque entrée de l'adresse MAC trouvé dans le fichier DHCP,sur tous les noms d'utilisateurs.

    Donc pour résoudre ce problème, j'ai voulu prendre l'heure et l'adresse MAc du fichier ACS comme eléments de recherches. De ce fait, je vais comparer l'heure et l'adresse MAc des deux fichiers si c'est les même, je récupère l'adresse IP et je recopie tout dans le fichier trace.Sauf que l'heure que j vais récuperer dans le fichier ACS, ne contient que heure:minute, car les deux fichiers diffèrent à quelques secondes près.

    sauf qu'il refuse de marcher, j'ai utilisé la commande grep.

    Thanks for your help.
    0
  11. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    Affiche la commande exacte que tu utilises.
    Pour une meilleure compréhension, affiche aussi un bout de chaque fichier et le résultat escompté ;-))
    0
  12. dieng
     
    more logacs.20

    May 14 20:00:36 192.168.2.1 CisACS_01_PassedAuth 1rgw406cg 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9
    May 14 20:00:38 192.168.2.1 CisACS_01_PassedAuth 1s0varqch 1 0 Message-Type=Authen OK,User-Name=mathieu@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-B9-2F-A5-27,NAS-Port=6
    May 14 20:01:36 192.168.2.1 CisACS_01_PassedAuth 9353k6ci 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9
    May 14 20:01:38 192.168.2.1 CisACS_01_PassedAuth 9n4abqcj 1 0 Message-Type=Authen OK,User-Name=mathieu@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-B9-2F-A5-27,NAS-Port=6
    May 14 20:02:36 192.168.2.1 CisACS_01_PassedAuth pqgqiuck 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9
    May 14 20:02:38 192.168.2.1 CisACS_01_PassedAuth qafxaecl 1 0 Message-Type=Authen OK,User-Name=mathieu@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-B9-2F-A5-27,NAS-Port=6
    May 14 20:03:36 192.168.2.1 CisACS_01_PassedAuth 16dsdhicm 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9
    May 14 20:03:38 192.168.2.1 CisACS_01_PassedAuth 16xrk92cn 1 0 Message-Type=Authen OK,User-Name=mathieu@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-B9-2F-A5-27,NAS-Port=6
    May 14 20:04:36 192.168.2.1 CisACS_01_PassedAuth 1n140g6co 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9
    May 14 20:04:38 192.168.2.1 CisACS_01_PassedAuth 1nl377qcp 1 0 Message-Type=Authen OK,User-Name=mathieu@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-B9-2F-A5-27,NAS-Port=6
    May 14 20:05:36 192.168.2.1 CisACS_01_PassedAuth 4nd006cq 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9
    May 14 20:05:38 192.168.2.1 CisACS_01_PassedAuth 57c6rqcr 1 0 Message-Type=Authen OK,User-Name=mathieu@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-B9-2F-A5-27,NAS-Port=6
    May 14 20:06:36 192.168.2.1 CisACS_01_PassedAuth laomyucs 1 0 Message-Type=Authen OK,User-Name=nadieng@test.lan,NAS-IP-Address=192.168.1.3,Caller-ID= 0-22-3F-BD-50-21,NAS-Port=9

    more logdhcp.20

    ogdhcp.20May 14 20:04:38 syslogserver dhcpd: Wrote 2 leases to leases file.
    May 14 20:04:38 syslogserver dhcpd: DHCPREQUEST for 192.168.0.1 from 00:22:3f:bd:50:21 (Client_ACS) via eth0
    May 14 20:04:38 syslogserver dhcpd: DHCPACK on 192.168.0.1 to 00:22:3f:bd:50:21 (Client_ACS) via eth0
    May 14 20:04:41 syslogserver dhcpd: DHCPREQUEST for 192.168.0.2 from 00:22:b9:2f:a5:27 (toto8) via eth0
    May 14 20:04:41 syslogserver dhcpd: DHCPACK on 192.168.0.2 to 00:22:b9:2f:a5:27 (toto8) via eth0
    May 14 20:34:38 syslogserver dhcpd: DHCPREQUEST for 192.168.0.1 from 00:22:3f:bd:50:21 (Client_ACS) via eth0
    May 14 20:34:38 syslogserver dhcpd: DHCPACK on 192.168.0.1 to 00:22:3f:bd:50:21 (Client_ACS) via eth0
    May 14 20:34:41 syslogserver dhcpd: DHCPREQUEST for 192.168.0.2 from 00:22:b9:2f:a5:27 (toto8) via eth0
    May 14 20:34:41 syslogserver dhcpd: DHCPACK on 192.168.0.2 to 00:22:b9:2f:a5:27 (toto8) via eth0

    script:

    tempo_file1="/tmp/fichier.txt"
    tempo_file2="/tmp/verif.txt"
    perm_file="trace"
    dir="/var/log/"

    cat logacs.20 | grep ".*PassedAuth" | awk 'BEGIN{FS=","} {print $2 "," $4}' | awk 'BEGIN{FS=","} {n=split($1,tab,"="); print tab[n] "," $2;}' | awk 'BEGIN{FS=","} {n=split($2,tab,"="); print tab[n] " " $1;}' | tr 'A-Z' 'a-z' | sed -e 's/-/:/g;s/^ /0/' > ${tempo_file1}

    # recuperation infos dans fichier logdhcp en fonction @MAC de ACS

    echo -e "USER\t\t\tMAC\t\t\tIP\t\tANNEE\tMOIS\tJOUR\tHEURE" > "${dir}/${perm_file}"

    while read ligne
    do
    set $ligne
    mac=${1}
    user=${2}

    grep ${mac} logdhcp.20 | grep "DHCPACK" >> ${tempo_file2}
    # on recherche à partir de l'@ MAC( fichier tempo-file) dans le fichier DHCP, tous les lignes qui ont DHCPACK
    # tempo_file2 ne contient que les lignes de logdhcp qui sont des acknowledges

    while read autre_ligne
    do
    set $autre_ligne
    ip=${8}
    mois=${1}
    jour=${2}
    heure=${3}
    echo -e "$user\t$mac\t$ip\t$year\t$mois\t$jour\t$heure" >> "${dir}/${perm_file}"
    done < ${tempo_file2}

    done < ${tempo_file1}

    sauf que j'ai ça comme résultat:

    USER MAC IP ANNEE MOIS JOUR HEURE
    cnestestnadieng 00:22:3f:bd:50:21 192.168.0.1 2007 May 14 20:04:38
    cnestestnadieng 00:22:3f:bd:50:21 192.168.0.1 2007 May 14 20:04:41
    cnestestnadieng 00:22:3f:bd:50:21 192.168.0.1 2007 MAy 14 20:34:48
    cnestestnadieng 00:22:3f:bd:50:21 192.168.0.1 2007 MAy 14 20:34:41
    cnestestmathieu 00:22:b9:2f:a5:27 192.168.0.2 2007 May 14 20:04:38
    cnestestmathieu 00:22:b9:2f:a5:27 192.168.0.2 2007 May 14 20:04:41
    cnestestmathieu 00:22:b9:2f:a5:27 192.168.0.2 2007 MAy 14 20:34:48
    cnestestmathieu 00:22:b9:2f:a5:27 192.168.0.2 2007 MAy 14 20:34:41

    au lieu:
    USER MAC IP ANNEE MOIS JOUR HEURE
    cnestestnadieng 00:22:3f:bd:50:21 192.168.0.1 2007 May 14 20:04:38
    cnestestmathieu 00:22:b9:2f:a5:27 192.168.0.2 2007 May 14 20:04:41
    cnestestnadieng 00:22:3f:bd:50:21 192.168.0.1 2007 May 14 20:34:38
    cnestestmathieu 00:22:b9:2f:a5:27 192.168.0.2 2007 May 14 20:34:41

    j'ai décidé de récuperer aussi l'heure du fichier acs et de l'ajouter comme paramètre de recherche de l'adresse IP en plus de l'adresse MAC.

    cat logacs.20 | grep ".*PassedAuth" | awk 'BEGIN{FS=","} {print $1 "," $2 "," $4}' | awk 'BEGIN{FS=","}{m=split($1,tab," ");print tab[3] "," $2 "," $3;}' | sed -e 's/(.*\)/\1:\2/' #| awk 'BEGIN{FS=","} {n=split($2,tab,"="); print tab[n] "," $1 "," $3;}' | awk 'BEGIN{FS=","} {n=split($3,tab,"="); print tab[n] " " $2 " " $1;}' | tr 'A-Z' 'a-z' | sed -e 's/-/:/g;s/^ /0/' > "$tempo_file1"

    Thanks for your help.
    0
  13. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Re-

    Tiens avec ça tu devrais arriver à tes fins :
    [jp@MDK tmpfs]$ cat plop
    
    USER MAC IP ANNEE MOIS JOUR HEURE
    cnestestnadieng 00:22:3f:bd:50:21 192.168.0.1 2007 May 14 20:04:38
    cnestestnadieng 00:22:3f:bd:50:21 192.168.0.1 2007 May 14 20:04:41
    cnestestnadieng 00:22:3f:bd:50:21 192.168.0.1 2007 MAy 14 20:34:48
    cnestestnadieng 00:22:3f:bd:50:21 192.168.0.1 2007 MAy 14 20:34:41
    cnestestmathieu 00:22:b9:2f:a5:27 192.168.0.2 2007 May 14 20:04:38
    cnestestmathieu 00:22:b9:2f:a5:27 192.168.0.2 2007 May 14 20:04:41
    cnestestmathieu 00:22:b9:2f:a5:27 192.168.0.2 2007 MAy 14 20:34:48
    cnestestmathieu 00:22:b9:2f:a5:27 192.168.0.2 2007 MAy 14 20:34:41
    
    [jp@MDK tmpfs]$ sort -r plop | uniq -6 -w5
    
    USER MAC IP ANNEE MOIS JOUR HEURE
    cnestestnadieng 00:22:3f:bd:50:21 192.168.0.1 2007 MAy 14 20:34:48
    cnestestnadieng 00:22:3f:bd:50:21 192.168.0.1 2007 May 14 20:04:41
    cnestestmathieu 00:22:b9:2f:a5:27 192.168.0.2 2007 MAy 14 20:34:48
    cnestestmathieu 00:22:b9:2f:a5:27 192.168.0.2 2007 May 14 20:04:41
    
    [jp@MDK tmpfs]$  
    man sort et man uniq sont tes nouveaux amis ;-))
    0
  14. dieng
     
    si si j'avais utilisé cette commande.

    sauf que non parceque c'est nadieng c'est connecté à 20:04:48 puis mathieu à 20:04:41 ensuite nadieng 20:34:48 et enfin mathieu à 20:04:41

    Le problèce c'est que le grep ne les prends pas dans l'ordre.
    Thanks for your help.
    0
  15. Dieng
     
    Rebonjour,

    auriez vous pas une idée sur ce problème . Comment pourrai-je le résoudre?

    Thanks for your help.
    0