Sed Supprimer la ligne si le champ est dupliqué

Tofdu31 -  
 Tofdu31 -
Bonjour,
Je cherche à supprimer des lignes si et uniquement si sur cette meme ligne il y a le champ 2 et le champ 3 dupliqué.

Je m'explique avec cet exemple :
;NOM DNS;ADRESSE IP 
1;play.google.com;play.google.com
1;play.google.com;142.250.74.238
2;android.com;android.com
2;android.com;142.250.74.228
3;googleanalytics.com;googleanalytics.com
3;googleanalytics.com;216.58.198.196
4;googleusercontent.com;googleusercontent.com
5;gstatic.com;gstatic.com
5;gstatic.com;172.217.19.227


On peut voir sur ce fichier nslookup_results.csv que j'ai des lignes avec le nom DNS qui se répète. Je veux donc supprimer ces lignes.

J'ai testé avec les éléments suivants :

%sed% -rn "/(\b\w+\b).*\b\1\b/ p" nslookup_results.csv

Je sais que le /d permet de supprimer mais je sais pas ou le mettre. D'autant plus que cette commande est dans un .bat

Autre exemple :

%gawk% -F ";" "{ if (a[$1]++ == 0) print $0; }" nslookup_results.csv
%gawk% -F ";" "a !~ $1; {a=$1}" nslookup_results.csv
%gawk% -F ";" "!_[$1]++" nslookup_results.csv
%gawk% -F ";" "!seen[$2]++" nslookup_results.csv


Mais à part m'afficher à l'écran qu'il trouve les doublons, impossible de faire supprimer les lignes dans mon fichier.

Si quelqu’un peut me venir en aide.

Merci

Tof
Configuration: Windows / Chrome 86.0.4240.198

8 réponses

  1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 502
     
    Salut,
    Mais à part m'afficher à l'écran qu'il trouve les doublons,
    Normal puisque tu le lui demandes explicitement avec les options "-n" et "p" qui vont de pair et n'affichent que ce qu'on leur demande ;-\

    $ cat f1
    ;NOM DNS;ADRESSE IP
    1;play.google.com;play.google.com
    1;play.google.com;142.250.74.238
    2;android.com;android.com
    2;android.com;142.250.74.228
    3;googleanalytics.com;googleanalytics.com
    3;googleanalytics.com;216.58.198.196
    4;googleusercontent.com;googleusercontent.com
    5;gstatic.com;gstatic.com
    5;gstatic.com;172.217.19.227


    $ sed -r '/(\b\w+\b).*\b\1\b/d' f1 
    ;NOM DNS;ADRESSE IP
    1;play.google.com;142.250.74.238
    2;android.com;142.250.74.228
    3;googleanalytics.com;216.58.198.196
    5;gstatic.com;172.217.19.227


    0
  2. Tofdu31
     
    Bonjour,

    Merci à toi,

    Par contre avec ta ligne de commande (adapté à Windows) ça fonctionne et m'affiche à l'écran le résultat. Je n'ai malheureusement aucune modification.

    Voici la commande :
    %sed% -r "/(\b\w+\b).*\b\1\b/d" nslookup_results.csv


    Et le résultat à l'écran :
    c:\SCRIPT>%sed% -r "/(\b\w+\b).*\b\1\b/d" nslookup_results.csv
    #;NOM DNS;ADRESSE IP
    1;play.google.com;142.250.74.238;
    2;android.com;142.250.74.228;
    3;googleanalytics.com;216.58.198.196;
    5;gstatic.com;172.217.19.227;
    7;dl.google.com;172.217.22.142;
    8;dl-ssl.google.com;64.233.184.93;
    8;dl-ssl.google.com;64.233.184.190;
    8;dl-ssl.google.com;64.233.184.136;
    8;dl-ssl.google.com;64.233.184.91;
    9;android.clients.google.com;216.58.213.142;
    9;android.clients.google.com;142.250.74.238;
    9;android.clients.google.com;216.58.214.78;
    9;android.clients.google.com;172.217.18.206;
    9;android.clients.google.com;216.58.206.238;
    9;android.clients.google.com;216.58.201.238;
    9;android.clients.google.com;216.58.209.238;
    9;android.clients.google.com;216.58.204.110;
    9;android.clients.google.com;216.58.198.206;
    9;android.clients.google.com;216.58.213.78;
    9;android.clients.google.com;216.58.215.46;
    9;android.clients.google.com;172.217.22.142;
    9;android.clients.google.com;172.217.19.238;
    9;android.clients.google.com;216.58.204.142;
    9;android.clients.google.com;216.58.213.174;
    11;ns2.google.com;216.239.34.10;
    12;ns3.google.com;216.239.36.10;
    13;ns4.google.com;216.239.38.10;
    14;ns-cloud-c1.googledomains.com;216.239.32.108;
    15;ns-cloud-c2.googledomains.com;216.239.34.108;
    16;ns-cloud-c3.googledomains.com;216.239.36.108;
    17;ns-cloud-c4.googledomains.com;216.239.38.108;


    Du coup, ce que j'ai fait, c'est renvoyer l'info sur un nouveau fichier est c bon. Si tu as une solution pour taper direct sur le fichier suis preneur. Mais je pense que cette erreur vient du fait que j'ai scripté le tout sous Windows (obligation malheureusement)

    Merci beaucoup pour ton soutien.

    Christophe
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 502
       
      Normalement sous GNU/Linux, la commande "sed" intègre l'option "-i" ou "--in-place" qui permet de modifier directement le fichier original. Tu peux même faire une sauvegarde de l'original en stipulant une extension "-i.BAK" par exemple.

      Maintenant reste à savoir si la version Windows l'incorpore…
      0
  3. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
     
    hello
    $ awk -F ";" '$2 != $3' nslookup_results.csv
    ;NOM DNS;ADRESSE IP
    1;play.google.com;142.250.74.238
    2;android.com;142.250.74.228
    3;googleanalytics.com;216.58.198.196
    5;gstatic.com;172.217.19.227
    0
  4. Tofdu31
     
    RE, au final, je me suis rendu compte qu'il me supprimé une ligne !
    Celle-ci uniquement en plus :
    10;ns1.google.com;216.239.32.10

    D'ailleurs sur le résultat du dessus, on voir quelle n'est plus là.

    J'ai testé avec cette commande qui affiche les doubons, et là aussi, on voit apparaitre dans les résultat la ligne :
    10;ns1.google.com;216.239.32.10


    Resultat avec la commande :
    %sed% -rn "/(\b\w+\b).*\b\1\b/ p" nslookup_temp_results_20-11-2020.csv


    1;play.google.com;play.google.com
    2;android.com;android.com
    3;googleanalytics.com;googleanalytics.com
    4;googleusercontent.com;googleusercontent.com
    5;gstatic.com;gstatic.com
    6;ggpht.com;ggpht.com
    7;dl.google.com;dl.google.com
    8;dl-ssl.google.com;dl-ssl.l.google.com
    8;dl-ssl.google.com;dl-ssl.google.com
    9;android.clients.google.com;android.l.google.com
    9;android.clients.google.com;android.clients.google.com
    10;ns1.google.com;ns1.google.com
    10;ns1.google.com;216.239.32.10
    11;ns2.google.com;ns2.google.com
    12;ns3.google.com;ns3.google.com
    13;ns4.google.com;ns4.google.com
    14;ns-cloud-c1.googledomains.com;ns-cloud-c1.googledomains.com
    15;ns-cloud-c2.googledomains.com;ns-cloud-c2.googledomains.com
    16;ns-cloud-c3.googledomains.com;ns-cloud-c3.googledomains.com
    17;ns-cloud-c4.googledomains.com;ns-cloud-c4.googledomains.com


    Dans mon script, voici la commande que j'utilise pour récuperer les adresses IP. Je me demande si c'est pas le chiffre 10 qui gène. Au pire, faudrait enlever les chiffres.
    rem Obtention adresse IP des noms DNS
    echo Obtention adresse IP des noms DNS
    echo.

    FOR /F %%G in (%inputfile%) do (
    set /a resultcount+=1
    FOR /F "skip=3 tokens=2 delims=: " %%J in ('echo(^|nslookup %%G') do @echo !resultcount!;%%G;%%J>> %outputfiletemp%
    )
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 502
       
      Re-

      C'est normal, la syntaxe employée est un peu trop large dans son interprétation, et dans ton cas, la regex matche le "10" du début de ligne et comme il le retrouve à la fin, il supprime la ligne.

      Cette syntax devrait mieux faire le job :
      sed -r '/(;[^;]*)\1/d'
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Tofdu31
     
    Super !!!

    Un grand merci , ça fonctionne !
    %sed% -r "/(;[^;]*)\1/d" nslookup_results.csv
    0
  7. Tofdu31
     
    Ooups trop vite parlé...
    Là je viens d'essayer sur des domaines Apple, et dans les resultats, c'est pas top.
    Des noms de domaines champs 1 et champ 2 présent et non supprimé.
    Des correspondances noms de domaines et adresses IP présents.

    Le but étant de me supprimer les lignes qui ont le champ 1 et champ 2 identiques.

    Voici le résultat avec la commande ci-dessus :
    NOM DNS;ADRESSE IP
    ax.itunes.apple.com;a1108.gi3.akamai.net
    ax.itunes.apple.com;95.100.202.123
    ax.itunes.apple.com;95.100.202.147
    ax.itunes.apple.com;ax.itunes.apple.com
    ax.itunes.apple.com;ax.itunes.apple.com.edgesuite.net
    ocsp.apple.com;ocsp.g.aaplimg.com
    ocsp.apple.com;17.253.113.202
    ocsp.apple.com;17.253.109.201
    ocsp.apple.com;ocsp.apple.com
    ocsp.apple.com;ocsp-lb.apple.com.akadns.net
    phobos.apple.com;phobos.itunes-apple.com.akadns.net
    phobos.apple.com;17.154.66.38
    phobos.apple.com;phobos.apple.com
    vpp.itunes.apple.com;vpp.itunes-apple.com.akadns.net
    vpp.itunes.apple.com;17.154.66.7
    vpp.itunes.apple.com;vpp.itunes.apple.com
    mdmenrollment.apple.com;mdm.fe.apple-dns.net
    mdmenrollment.apple.com;17.248.177.138
    mdmenrollment.apple.com;17.248.176.135
    mdmenrollment.apple.com;17.248.176.136
    mdmenrollment.apple.com;17.248.177.78
    mdmenrollment.apple.com;17.248.177.204
    mdmenrollment.apple.com;17.248.176.142
    mdmenrollment.apple.com;17.248.176.39
    mdmenrollment.apple.com;17.248.177.76
    mdmenrollment.apple.com;mdmenrollment.apple.com
    mdmenrollment.apple.com;mdmenrollment.apple.com.akadns.net
    iprofiles.apple.com;iprofiles-st.apple.com.akadns.net
    iprofiles.apple.com;17.164.1.33
    iprofiles.apple.com;iprofiles.apple.com
    iprofiles.apple.com;iprofiles.apple.com.akadns.net
    identity.apple.com;identity.apple.com.akadns.net
    identity.apple.com;17.146.1.146
    identity.apple.com;identity.apple.com
    deviceservices-external.apple.com;deviceservices-external.gcsis-apple.com.akadns.net
    deviceservices-external.apple.com;17.122.193.87
    deviceservices-external.apple.com;deviceservices-external.apple.com
    deviceenrollment.apple.com;st11p01su-deviceenrollment.apple.com.akadns.net
    deviceenrollment.apple.com;17.164.1.5
    deviceenrollment.apple.com;deviceenrollment.apple.com
    deviceenrollment.apple.com;deviceenrollment.apple.com.akadns.net
    gdmf.apple.com;gdmf.apple.com.akadns.net
    gdmf.apple.com;17.171.47.23
    gdmf.apple.com;gdmf.apple.com
    push.apple.com;push.apple.com
    courier.push.apple.com;courier.push.apple.com
    a12-64.akam.net;a12-64.akam.net
    a12-64.akam.net;184.26.160.64
    a13-64.akam.net;a13-64.akam.net
    a13-64.akam.net;2600
    a13-64.akam.net;2.22.230.64
    a18-64.akam.net;a18-64.akam.net
    a18-64.akam.net;95.101.36.64
    a24-64.akam.net;a24-64.akam.net
    a24-64.akam.net;2.16.130.64
    a28-64.akam.net;a28-64.akam.net
    a28-64.akam.net;95.100.173.64
    a5-64.akam.net;a5-64.akam.net
    a5-64.akam.net;2600
    a5-64.akam.net;95.100.168.64
    a6-64.akam.net;a6-64.akam.net
    a6-64.akam.net;2600
    a6-64.akam.net;23.211.133.64
    adns3.akam.net;adns3.akam.net
    adns3.akam.net;184.26.161.67
    ns1-2.akam.net;ns1-2.akam.net
    ns1-2.akam.net;2600
    ns1-2.akam.net;193.108.91.2
    ns4-65.akam.net;ns4-65.akam.net
    ns4-65.akam.net;84.53.139.65
    ns5-65.akam.net;ns5-65.akam.net
    ns5-65.akam.net;184.85.248.65
    ns7-65.akam.net;ns7-65.akam.net
    ns7-65.akam.net;96.7.49.65
    usw6.akam.net;usw6.akam.net
    usw6.akam.net;23.61.199.64
    ns1-1.akamaitech.net;ns1-1.akamaitech.net
    ns1-1.akamaitech.net;193.108.88.1
    ns2-193.akamaitech.net;ns2-193.akamaitech.net
    ns2-193.akamaitech.net;2.22.230.193
    ns3-193.akamaitech.net;ns3-193.akamaitech.net
    ns3-193.akamaitech.net;2600
    ns3-193.akamaitech.net;23.61.199.193
    ns4-193.akamaitech.net;ns4-193.akamaitech.net
    ns4-193.akamaitech.net;2600
    ns4-193.akamaitech.net;84.53.139.193
    ns5-193.akamaitech.net;ns5-193.akamaitech.net
    ns5-193.akamaitech.net;184.85.248.193
    ns6-193.akamaitech.net;ns6-193.akamaitech.net
    ns6-193.akamaitech.net;95.100.168.193
    ns7-193.akamaitech.net;ns7-193.akamaitech.net
    ns7-193.akamaitech.net;96.7.49.193
    zc.akamaitech.net;zc.akamaitech.net
    zc.akamaitech.net;23.74.25.192
    zd.akamaitech.net;zd.akamaitech.net
    zd.akamaitech.net;95.101.36.192
    ze.akamaitech.net;ze.akamaitech.net
    ze.akamaitech.net;184.26.161.192
    zg.akamaitech.net;zg.akamaitech.net
    zg.akamaitech.net;96.7.50.192
    zh.akamaitech.net;zh.akamaitech.net
    zh.akamaitech.net;23.211.133.192
    zi.akamaitech.net;zi.akamaitech.net
    zi.akamaitech.net;184.26.161.192
    a.ns.apple.com;a.ns.apple.com
    a.ns.apple.com;2620
    a.ns.apple.com;17.253.200.1
    b.ns.apple.com;b.ns.apple.com
    b.ns.apple.com;2620
    b.ns.apple.com;17.253.207.1
    c.ns.apple.com;c.ns.apple.com
    c.ns.apple.com;2620
    c.ns.apple.com;204.19.119.1
    d.ns.apple.com;d.ns.apple.com
    d.ns.apple.com;2620
    d.ns.apple.com;204.26.57.1
    a1-128.akadns.net;a1-128.akadns.net
    a1-128.akadns.net;193.108.88.128
    a11-129.akadns.net;a11-129.akadns.net
    a11-129.akadns.net;84.53.139.129
    a12-131.akagtm.org;a12-131.akagtm.org
    a12-131.akagtm.org;184.26.160.131
    a13-130.akagtm.org;a13-130.akagtm.org
    a13-130.akagtm.org;2.22.230.130
    a18-128.akagtm.org;a18-128.akagtm.org
    a18-128.akagtm.org;95.101.36.128
    a28-129.akagtm.org;a28-129.akagtm.org
    a28-129.akagtm.org;95.100.173.129
    a3-129.akadns.net;a3-129.akadns.net
    a3-129.akadns.net;2600
    a3-129.akadns.net;96.7.49.129
    a5-130.akagtm.org;a5-130.akagtm.org
    a5-130.akagtm.org;95.100.168.130
    a7-131.akadns.net;a7-131.akadns.net
    a7-131.akadns.net;2600
    a7-131.akadns.net;23.61.199.131
    a9-128.akadns.net;a9-128.akadns.net
    a9-128.akadns.net;184.85.248.128
    a.ns.apple.com;a.ns.apple.com
    a.ns.apple.com;2620
    a.ns.apple.com;17.253.200.1
    b.ns.apple.com;b.ns.apple.com
    b.ns.apple.com;2620
    b.ns.apple.com;17.253.207.1
    c.ns.apple.com;c.ns.apple.com
    c.ns.apple.com;2620
    c.ns.apple.com;204.19.119.1
    d.ns.apple.com;d.ns.apple.com
    d.ns.apple.com;2620
    d.ns.apple.com;204.26.57.1


    Par contre si je mets un champ 0 (on va dire) avec un ; la selection se fait mieux. Je mets en place de suite dans mon script cela et vous tiens au courant
    0
  8. Tofdu31
     
    Bon en fait, je me rends comptes que c'est compliqué de faire du trie,

    Au pire, pourrait-on au final avoir une commande sed pour extraire chaque ligne qui a un DNS et une adresse IP ?
    ça serait plus simple peut-étre.

    Alors coté Apple, voici le fichier d'origine à traité :
    #;NOM DNS;ADRESSE IP
    52;ax.itunes.apple.com;a1108.gi3.akamai.net
    52;ax.itunes.apple.com;95.100.202.123
    52;ax.itunes.apple.com;95.100.202.147
    52;ax.itunes.apple.com;ax.itunes.apple.com
    52;ax.itunes.apple.com;ax.itunes.apple.com.edgesuite.net
    53;ocsp.apple.com;ocsp.g.aaplimg.com
    53;ocsp.apple.com;17.253.113.202
    53;ocsp.apple.com;ocsp.apple.com
    53;ocsp.apple.com;ocsp-lb.apple.com.akadns.net
    54;phobos.apple.com;phobos.itunes-apple.com.akadns.net
    54;phobos.apple.com;17.154.66.38
    54;phobos.apple.com;phobos.apple.com
    55;vpp.itunes.apple.com;vpp.itunes-apple.com.akadns.net
    55;vpp.itunes.apple.com;17.154.66.7
    55;vpp.itunes.apple.com;vpp.itunes.apple.com
    56;mdmenrollment.apple.com;mdm.fe.apple-dns.net
    56;mdmenrollment.apple.com;17.248.176.104
    56;mdmenrollment.apple.com;17.248.176.75
    56;mdmenrollment.apple.com;17.248.177.139
    56;mdmenrollment.apple.com;17.248.177.196
    56;mdmenrollment.apple.com;17.248.177.140
    56;mdmenrollment.apple.com;17.248.177.164
    56;mdmenrollment.apple.com;17.248.177.108
    56;mdmenrollment.apple.com;17.248.179.9
    56;mdmenrollment.apple.com;mdmenrollment.apple.com
    56;mdmenrollment.apple.com;mdmenrollment.apple.com.akadns.net
    57;iprofiles.apple.com;iprofiles-st.apple.com.akadns.net
    57;iprofiles.apple.com;17.164.1.33
    57;iprofiles.apple.com;iprofiles.apple.com
    57;iprofiles.apple.com;iprofiles.apple.com.akadns.net
    58;identity.apple.com;identity.apple.com.akadns.net
    58;identity.apple.com;17.146.1.146
    58;identity.apple.com;identity.apple.com
    59;deviceservices-external.apple.com;deviceservices-external.gcsis-apple.com.akadns.net
    59;deviceservices-external.apple.com;17.122.193.87
    59;deviceservices-external.apple.com;deviceservices-external.apple.com
    60;deviceenrollment.apple.com;st11p01su-deviceenrollment.apple.com.akadns.net
    60;deviceenrollment.apple.com;17.164.1.5
    60;deviceenrollment.apple.com;deviceenrollment.apple.com
    60;deviceenrollment.apple.com;deviceenrollment.apple.com.akadns.net
    61;gdmf.apple.com;gdmf.apple.com.akadns.net
    61;gdmf.apple.com;17.171.47.23
    61;gdmf.apple.com;gdmf.apple.com
    62;push.apple.com;push.apple.com
    63;courier.push.apple.com;courier.push.apple.com
    64;a12-64.akam.net;a12-64.akam.net
    64;a12-64.akam.net;184.26.160.64
    65;a13-64.akam.net;a13-64.akam.net
    65;a13-64.akam.net;2600
    65;a13-64.akam.net;2.22.230.64
    66;a18-64.akam.net;a18-64.akam.net
    66;a18-64.akam.net;95.101.36.64
    67;a24-64.akam.net;a24-64.akam.net
    67;a24-64.akam.net;2.16.130.64
    68;a28-64.akam.net;a28-64.akam.net
    68;a28-64.akam.net;95.100.173.64
    69;a5-64.akam.net;a5-64.akam.net
    69;a5-64.akam.net;2600
    69;a5-64.akam.net;95.100.168.64
    70;a6-64.akam.net;a6-64.akam.net
    70;a6-64.akam.net;2600
    70;a6-64.akam.net;23.211.133.64
    71;adns3.akam.net;adns3.akam.net
    71;adns3.akam.net;184.26.161.67
    72;ns1-2.akam.net;ns1-2.akam.net
    72;ns1-2.akam.net;2600
    72;ns1-2.akam.net;193.108.91.2
    73;ns4-65.akam.net;ns4-65.akam.net
    73;ns4-65.akam.net;84.53.139.65
    74;ns5-65.akam.net;ns5-65.akam.net
    74;ns5-65.akam.net;184.85.248.65
    75;ns7-65.akam.net;ns7-65.akam.net
    75;ns7-65.akam.net;96.7.49.65
    76;usw6.akam.net;usw6.akam.net
    76;usw6.akam.net;23.61.199.64
    77;ns1-1.akamaitech.net;ns1-1.akamaitech.net
    77;ns1-1.akamaitech.net;193.108.88.1
    78;ns2-193.akamaitech.net;ns2-193.akamaitech.net
    78;ns2-193.akamaitech.net;2.22.230.193
    79;ns3-193.akamaitech.net;ns3-193.akamaitech.net
    79;ns3-193.akamaitech.net;2600
    79;ns3-193.akamaitech.net;23.61.199.193
    80;ns4-193.akamaitech.net;ns4-193.akamaitech.net
    80;ns4-193.akamaitech.net;2600
    80;ns4-193.akamaitech.net;84.53.139.193
    81;ns5-193.akamaitech.net;ns5-193.akamaitech.net
    81;ns5-193.akamaitech.net;184.85.248.193
    82;ns6-193.akamaitech.net;ns6-193.akamaitech.net
    82;ns6-193.akamaitech.net;95.100.168.193
    83;ns7-193.akamaitech.net;ns7-193.akamaitech.net
    83;ns7-193.akamaitech.net;96.7.49.193
    84;zc.akamaitech.net;zc.akamaitech.net
    84;zc.akamaitech.net;23.74.25.192
    85;zd.akamaitech.net;zd.akamaitech.net
    85;zd.akamaitech.net;95.101.36.192
    86;ze.akamaitech.net;ze.akamaitech.net
    86;ze.akamaitech.net;184.26.161.192
    87;zg.akamaitech.net;zg.akamaitech.net
    87;zg.akamaitech.net;96.7.50.192
    88;zh.akamaitech.net;zh.akamaitech.net
    88;zh.akamaitech.net;23.211.133.192
    89;zi.akamaitech.net;zi.akamaitech.net
    89;zi.akamaitech.net;184.26.161.192
    90;a.ns.apple.com;a.ns.apple.com
    90;a.ns.apple.com;2620
    90;a.ns.apple.com;17.253.200.1
    91;b.ns.apple.com;b.ns.apple.com
    91;b.ns.apple.com;2620
    91;b.ns.apple.com;17.253.207.1
    92;c.ns.apple.com;c.ns.apple.com
    92;c.ns.apple.com;2620
    92;c.ns.apple.com;204.19.119.1
    93;d.ns.apple.com;d.ns.apple.com
    93;d.ns.apple.com;2620
    93;d.ns.apple.com;204.26.57.1
    94;a1-128.akadns.net;a1-128.akadns.net
    94;a1-128.akadns.net;193.108.88.128
    95;a11-129.akadns.net;a11-129.akadns.net
    95;a11-129.akadns.net;84.53.139.129
    96;a12-131.akagtm.org;a12-131.akagtm.org
    96;a12-131.akagtm.org;184.26.160.131
    97;a13-130.akagtm.org;a13-130.akagtm.org
    97;a13-130.akagtm.org;2.22.230.130
    98;a18-128.akagtm.org;a18-128.akagtm.org
    98;a18-128.akagtm.org;95.101.36.128
    99;a28-129.akagtm.org;a28-129.akagtm.org
    99;a28-129.akagtm.org;95.100.173.129
    100;a3-129.akadns.net;a3-129.akadns.net
    100;a3-129.akadns.net;2600
    100;a3-129.akadns.net;96.7.49.129
    101;a5-130.akagtm.org;a5-130.akagtm.org
    101;a5-130.akagtm.org;95.100.168.130
    102;a7-131.akadns.net;a7-131.akadns.net
    102;a7-131.akadns.net;2600
    102;a7-131.akadns.net;23.61.199.131
    103;a9-128.akadns.net;a9-128.akadns.net
    103;a9-128.akadns.net;184.85.248.128
    104;a.ns.apple.com;a.ns.apple.com
    104;a.ns.apple.com;2620
    104;a.ns.apple.com;17.253.200.1
    105;b.ns.apple.com;b.ns.apple.com
    105;b.ns.apple.com;2620
    105;b.ns.apple.com;17.253.207.1
    106;c.ns.apple.com;c.ns.apple.com
    106;c.ns.apple.com;2620
    106;c.ns.apple.com;204.19.119.1
    107;d.ns.apple.com;d.ns.apple.com
    107;d.ns.apple.com;2620
    107;d.ns.apple.com;204.26.57.1


    Par contre avec la ligne de commande, j'ai pas toutes les adresses IP envoyé dans mon nouveau fichier :
    %sed% -r "/(\b\w+\b).*\b\1\b/d" Apple_temp.csv > Apple.csv


    Et si j'utilise cette ligne de commande pour affichier l'ensemble des doublons. Là j'ai effectivement les doublons mais aussi quelques des lignes ayant une adresse IP.... Incroyable...
    Ligne de commande :
    %sed% -rn "/(\b\w+\b).*\b\1\b/ p" Apple_temp.csv > doublons_Apple.csv


    Voici le resultat :
    52;ax.itunes.apple.com;ax.itunes.apple.com
    52;ax.itunes.apple.com;ax.itunes.apple.com.edgesuite.net
    53;ocsp.apple.com;ocsp.g.aaplimg.com
    53;ocsp.apple.com;ocsp.apple.com
    53;ocsp.apple.com;ocsp-lb.apple.com.akadns.net
    54;phobos.apple.com;phobos.itunes-apple.com.akadns.net
    54;phobos.apple.com;phobos.apple.com
    55;vpp.itunes.apple.com;vpp.itunes-apple.com.akadns.net
    55;vpp.itunes.apple.com;vpp.itunes.apple.com
    56;mdmenrollment.apple.com;mdm.fe.apple-dns.net
    56;mdmenrollment.apple.com;mdmenrollment.apple.com
    56;mdmenrollment.apple.com;mdmenrollment.apple.com.akadns.net
    57;iprofiles.apple.com;iprofiles-st.apple.com.akadns.net
    57;iprofiles.apple.com;iprofiles.apple.com
    57;iprofiles.apple.com;iprofiles.apple.com.akadns.net
    58;identity.apple.com;identity.apple.com.akadns.net
    58;identity.apple.com;17.146.1.146
    58;identity.apple.com;identity.apple.com
    59;deviceservices-external.apple.com;deviceservices-external.gcsis-apple.com.akadns.net
    59;deviceservices-external.apple.com;deviceservices-external.apple.com
    60;deviceenrollment.apple.com;st11p01su-deviceenrollment.apple.com.akadns.net
    60;deviceenrollment.apple.com;deviceenrollment.apple.com
    60;deviceenrollment.apple.com;deviceenrollment.apple.com.akadns.net
    61;gdmf.apple.com;gdmf.apple.com.akadns.net
    61;gdmf.apple.com;gdmf.apple.com
    62;push.apple.com;push.apple.com
    63;courier.push.apple.com;courier.push.apple.com
    64;a12-64.akam.net;a12-64.akam.net
    64;a12-64.akam.net;184.26.160.64
    65;a13-64.akam.net;a13-64.akam.net
    65;a13-64.akam.net;2.22.230.64
    66;a18-64.akam.net;a18-64.akam.net
    66;a18-64.akam.net;95.101.36.64
    67;a24-64.akam.net;a24-64.akam.net
    67;a24-64.akam.net;2.16.130.64
    68;a28-64.akam.net;a28-64.akam.net
    68;a28-64.akam.net;95.100.173.64
    69;a5-64.akam.net;a5-64.akam.net
    69;a5-64.akam.net;95.100.168.64
    70;a6-64.akam.net;a6-64.akam.net
    70;a6-64.akam.net;23.211.133.64
    71;adns3.akam.net;adns3.akam.net
    72;ns1-2.akam.net;ns1-2.akam.net
    72;ns1-2.akam.net;193.108.91.2
    73;ns4-65.akam.net;ns4-65.akam.net
    73;ns4-65.akam.net;84.53.139.65
    74;ns5-65.akam.net;ns5-65.akam.net
    74;ns5-65.akam.net;184.85.248.65
    75;ns7-65.akam.net;ns7-65.akam.net
    75;ns7-65.akam.net;96.7.49.65
    76;usw6.akam.net;usw6.akam.net
    77;ns1-1.akamaitech.net;ns1-1.akamaitech.net
    77;ns1-1.akamaitech.net;193.108.88.1
    78;ns2-193.akamaitech.net;ns2-193.akamaitech.net
    78;ns2-193.akamaitech.net;2.22.230.193
    79;ns3-193.akamaitech.net;ns3-193.akamaitech.net
    79;ns3-193.akamaitech.net;23.61.199.193
    80;ns4-193.akamaitech.net;ns4-193.akamaitech.net
    80;ns4-193.akamaitech.net;84.53.139.193
    81;ns5-193.akamaitech.net;ns5-193.akamaitech.net
    81;ns5-193.akamaitech.net;184.85.248.193
    82;ns6-193.akamaitech.net;ns6-193.akamaitech.net
    82;ns6-193.akamaitech.net;95.100.168.193
    83;ns7-193.akamaitech.net;ns7-193.akamaitech.net
    83;ns7-193.akamaitech.net;96.7.49.193
    84;zc.akamaitech.net;zc.akamaitech.net
    85;zd.akamaitech.net;zd.akamaitech.net
    86;ze.akamaitech.net;ze.akamaitech.net
    87;zg.akamaitech.net;zg.akamaitech.net
    88;zh.akamaitech.net;zh.akamaitech.net
    89;zi.akamaitech.net;zi.akamaitech.net
    90;a.ns.apple.com;a.ns.apple.com
    91;b.ns.apple.com;b.ns.apple.com
    92;c.ns.apple.com;c.ns.apple.com
    93;d.ns.apple.com;d.ns.apple.com
    94;a1-128.akadns.net;a1-128.akadns.net
    94;a1-128.akadns.net;193.108.88.128
    95;a11-129.akadns.net;a11-129.akadns.net
    95;a11-129.akadns.net;84.53.139.129
    96;a12-131.akagtm.org;a12-131.akagtm.org
    96;a12-131.akagtm.org;184.26.160.131
    97;a13-130.akagtm.org;a13-130.akagtm.org
    97;a13-130.akagtm.org;2.22.230.130
    98;a18-128.akagtm.org;a18-128.akagtm.org
    98;a18-128.akagtm.org;95.101.36.128
    99;a28-129.akagtm.org;a28-129.akagtm.org
    99;a28-129.akagtm.org;95.100.173.129
    100;a3-129.akadns.net;a3-129.akadns.net
    100;a3-129.akadns.net;96.7.49.129
    101;a5-130.akagtm.org;a5-130.akagtm.org
    101;a5-130.akagtm.org;95.100.168.130
    102;a7-131.akadns.net;a7-131.akadns.net
    102;a7-131.akadns.net;23.61.199.131
    103;a9-128.akadns.net;a9-128.akadns.net
    103;a9-128.akadns.net;184.85.248.128
    104;a.ns.apple.com;a.ns.apple.com
    105;b.ns.apple.com;b.ns.apple.com
    106;c.ns.apple.com;c.ns.apple.com
    107;d.ns.apple.com;d.ns.apple.com
    0
  9. Tofdu31
     
    Allez enfin c bon,
    Il faut rediriger l'entrée standard, pour que ce ne soit pas awk qui lise tes noms de fichier windowsiens
    %sed% -r "/(;[^;]*)\1/d" < %outputfile_Apple_temp% > %outputfile_Apple%
    0