IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Afficher ligne unique


Sujet :

Shell et commandes GNU

  1. #1
    Membre à l'essai
    Homme Profil pro
    La bidouille
    Inscrit en
    Novembre 2016
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : La bidouille
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2016
    Messages : 12
    Points : 12
    Points
    12
    Par défaut Afficher ligne unique
    Bonjour à tous,

    J'ai une commande qui me liste des IPs avec d'autres champs, exemple :

    192.168.1.1 9 1
    192.168.1.2 9 3
    192.168.1.3 9 1
    192.168.1.3 10 0

    Ce que je souhaite faire, c'est afficher mes IP mais ne pas afficher le doublons 192.168.1.3 (l'ip sera amené à changer, parfois ça sera la 1.2 ou la 1.1) qui à une valeur 0 dans la dernière colone. Mais surtout afficher si l'ip est unique avec une valeur 0 en dernière colonne.

    Par avance merci de votre aide.

  2. #2
    Membre à l'essai
    Homme Profil pro
    La bidouille
    Inscrit en
    Novembre 2016
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : La bidouille
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2016
    Messages : 12
    Points : 12
    Points
    12
    Par défaut
    Pour complément d'info, je suis sous Centos.
    Merci.

  3. #3
    Modérateur
    Avatar de ggnore
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 472
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 472
    Points : 4 029
    Points
    4 029
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    echo "192.168.1.1 9 1
    192.168.1.2 9 3
    192.168.1.3 9 1
    192.168.1.3 10 0" | cut -d' ' -f1 | sort | uniq
    192.168.1.1
    192.168.1.2
    192.168.1.3
    Pas tout compris, mais voilà une piste.
    Toutes les vertus des hommes se perdent dans l’intérêt comme les fleuves se perdent dans la mer.
    N'oubliez pas de consulter les FAQ Linux et les cours et tutoriels Linux

  4. #4
    Membre à l'essai
    Homme Profil pro
    La bidouille
    Inscrit en
    Novembre 2016
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : La bidouille
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2016
    Messages : 12
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par ggnore Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    echo "192.168.1.1 9 1
    192.168.1.2 9 3
    192.168.1.3 9 1
    192.168.1.3 10 0" | cut -d' ' -f1 | sort | uniq

    Pas tout compris, mais voilà une piste.

    Merci, mais je vais mieux m'expliquer :

    J'ai une fichier avec ce genre de colonnes dedans, il y a bien 3 colonnes, meme si c'est pas évident à voir ici :


    192.168.1.1 9 1
    192.168.1.2 9 3
    192.168.1.3 9 1
    192.168.1.3 10 0

    si je fais un cat de mon fichier, je voudrai qu'il m'affiche toutes les IP sans les doublons, et si il y a des doublons, je veux qu'il m'affiche seulement l'ip dont la dernière colone n'est pas égale à 0 :

    192.168.1.1 9 1
    192.168.1.2 9 3
    192.168.1.3 9 1

  5. #5
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 685
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 685
    Points : 30 974
    Points
    30 974
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par aboubobo Voir le message
    ...et si il y a des doublons, je veux qu'il m'affiche seulement l'ip dont la dernière colone n'est pas égale à 0 :
    Et que faire s'il y a plusieurs doublons avec, pour tous ces doublons, une dernière colonne différente de 0 ???
    192.168.1.1 9 1
    192.168.1.1 9 2
    192.168.1.1 9 3
    192.168.1.1 9 4
    ?????
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  6. #6
    Membre à l'essai
    Homme Profil pro
    La bidouille
    Inscrit en
    Novembre 2016
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : La bidouille
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2016
    Messages : 12
    Points : 12
    Points
    12
    Par défaut
    Il n'y en aura pas.

    Au maximum la même ip peut apparaître que deux fois.
    Et une des deux aura forcément un 0 dans sa dernière colonne. L'autre aura forcément un chiffre supérieur à zéro.

  7. #7
    Expert éminent

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Points : 6 276
    Points
    6 276
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $ cat fich 
    192.168.1.1 9 0
    192.168.1.2 9 3
    192.168.1.3 9 1
    192.168.1.3 10 0
    192.168.1.1 9 1
    192.168.1.2 9 0
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $ sort -u -k 1,1 < <(sort -r fich)
    192.168.1.1 9 1
    192.168.1.2 9 3
    192.168.1.3 9 1
    $ man woman
    Il n'y a pas de page de manuel pour woman.

  8. #8
    Expert éminent sénior Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 277
    Points : 12 722
    Points
    12 722
    Par défaut
    Bonjour,

    Bah, il semblerait qu'un simple grep -v ' 0$' fichier soit suffisant...
    Cordialement.

  9. #9
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 685
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 685
    Points : 30 974
    Points
    30 974
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par disedorgue Voir le message
    Citation Envoyé par aboubobo Voir le message
    je voudrai qu'il m'affiche toutes les IP sans les doublons...
    Bah, il semblerait qu'un simple grep -v ' 0$' fichier soit suffisant...
    Hé oui mais non ; à cause de ce simple petit mot (souligné) qui signifie que s'il y a une IP unique avec sa dernière colonne à zéro alors celle-là il la faut...

    Citation Envoyé par zipe31 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $ sort -u -k 1,1 < <(sort -r fich)
    Excellent (j'envisageais du awk)...
    Mais peut-être éviter une indirection entrante (je suis jamais à l'aise avec ça)... sort -r fich |sort -u -k 1,1 fonctionne aussi...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  10. #10
    Expert éminent sénior Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 277
    Points : 12 722
    Points
    12 722
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Hé oui mais non ; à cause de ce simple petit mot (souligné) qui signifie que s'il y a une IP unique avec sa dernière colonne à zéro alors celle-là il la faut...
    Je suis d'accord avec toi, mais ce qui me met le doute, c'est son fichier exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    192.168.1.1 9 1
    192.168.1.2 9 3
    192.168.1.3 9 1
    192.168.1.3 10 0
    et le message ci-dessous:
    Citation Envoyé par aboubobo Voir le message
    Il n'y en aura pas.

    Au maximum la même ip peut apparaître que deux fois.
    Et une des deux aura forcément un 0 dans sa dernière colonne. L'autre aura forcément un chiffre supérieur à zéro.
    Qui peut faire penser que le cas du 0 en dernière colonne ne peut aussi être présent que si il y a doublon justement (voir aussi l'avant dernière colonne) ...
    Cordialement.

  11. #11
    Membre à l'essai
    Homme Profil pro
    La bidouille
    Inscrit en
    Novembre 2016
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : La bidouille
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2016
    Messages : 12
    Points : 12
    Points
    12
    Par défaut
    Merci pour vos réponses.
    Mais quand j'essai le je n'ai pas les résultats sans doublons se terminant par 0.
    Moi je souhaite qu'ils n'apparaissent pas seulement s'il y a un doublons.

    En gros si doublons, je mets QUE la ligne qui est suppérieur à 0.
    Si pas doublons je laisse la ligne, même si la dernière colonne est à 0.

    Merci pour votre aide.


    ----------------------------------
    Mise à jour

    Désolé, mais ça fonctionne
    Il faut noter tout de même que le doublon est choisi par son ordre d'entré dans la commande, la première des deux lignes à apparaitre est affichée (généralement située en haut dans le fichier ou sortie standard), l'autre entrant en seconde position est rejetée. Dans mon cas de figure ça me convient parfaitement.
    C'est impeccable, merci à vous tous !

  12. #12
    Membre à l'essai
    Homme Profil pro
    La bidouille
    Inscrit en
    Novembre 2016
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : La bidouille
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2016
    Messages : 12
    Points : 12
    Points
    12
    Par défaut

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Compteur de ligne uniquement pour les lignes affichées suite à un filtre
    Par d.tellier dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/03/2016, 19h35
  2. Afficher que les lignes uniques
    Par boitenospam dans le forum Excel
    Réponses: 4
    Dernier message: 29/11/2012, 21h10
  3. [XL-2007] Copier/coller des lignes uniquement affichées d'un tableau
    Par bedoch dans le forum Excel
    Réponses: 4
    Dernier message: 12/06/2009, 09h21
  4. Table à ligne unique.
    Par jarrux dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 18/01/2005, 19h00
  5. Multiplication ligne à ligne uniquement en SQL
    Par mehdou dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/09/2004, 16h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo