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

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    octobre 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : octobre 2007
    Messages : 106
    Points : 48
    Points
    48

    Par défaut comment éviter les doublons en shell ?

    je copie 2 lignes et les stock dans fichier nommé password
    dans les 2 lignes copiées, il y a des info redondantes
    ex ligne 1 : toto:100:reseau
    ex ligne 2 : 100:A:reseau:/home/ etc ..

    donc dans le fichier password il y aura les 2 lignes copiées avec 100 et reseau en doublons

    comment les enlever , je ne trouve pas

    je ne peux pas des le debut choisir les données qui m'intéresse afin d'éviter les doublons ( avec grep cut etc ..) car les 2 fichiers ou je dois récolter les infos param_user et param_carac ont des lignes qui ne sont pas écrites de la meme facon du début jusqu'à la fin sauf pour param_user

    exemple pour param_user ce sera tout le tps la meme chose :
    login : id : service ==> toto:500:reseau
    tata:666:admin

    pour param_carac c'est dans le désordre par rapport au colonne
    500:A:reseau:
    458:B:dev:
    admin:A:
    etude:C:
    reseau :B


    connaissez vous une ligne de commande a rajouter dans mon prog pour qu'il copie 2 lignes ( prisent dans 2 fichiers) et les renvoies dans un fichier nommé passwd mais sans les doublons.

    echo "$ligne1:$ligne2" >>passwd //mais sans doublon

    merci de votre aide

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    décembre 2006
    Messages
    271
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : décembre 2006
    Messages : 271
    Points : 328
    Points
    328

    Par défaut

    J'espère que tu ne fais pas ce script pour ajouter/modifier /etc/passwd sachant que d'une part c'est /etc/shadows qui est utilisé maintenant et que d'autre part cette "technique" d'édition n'est pas propre.

    Sinon je n'ai pas vraiment compris le format des deux fichiers et ce qu'ils contiennent respectivement (à part des utilisateurs unix).

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    octobre 2007
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : octobre 2007
    Messages : 106
    Points : 48
    Points
    48

    Par défaut

    non je ne vais pas ecrire dans /etc/passwd, il s'agit d'un exercice de création de script lié à la gestion des users. C'est pour comprendre et faire des scripts.
    je test mon programme sur une machine test ou j'ai installé redhat 5

    les 2 fichiers param_user et param_carac sont juste des fichiers plats qui contiennent des donnée de user entrées manuellement.

    param_user contient des données unique de chaque user {id:login:service}
    param_carac contient des données communes aux user

    les 2 lignes copiées sont envoyés dans un fichier que j'ai crée, nommé passwd

    pouvez répondre a ma question
    Merci

  4. #4
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    février 2006
    Messages
    7 344
    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 : 7 344
    Points : 20 914
    Points
    20 914
    Billets dans le blog
    1

    Par défaut

    Citation Envoyé par monsieur77 Voir le message
    je ne peux pas des le debut choisir les données qui m'intéresse afin d'éviter les doublons ( avec grep cut etc ..) car les 2 fichiers ou je dois récolter les infos param_user et param_carac ont des lignes qui ne sont pas écrites de la meme facon du début jusqu'à la fin sauf pour param_user

    exemple pour param_user ce sera tout le tps la meme chose :
    login : id : service ==> toto:500:reseau
    tata:666:admin

    pour param_carac c'est dans le désordre par rapport au colonne
    500:A:reseau:
    458:B:dev:
    admin:A:
    etude:C:
    reseau :B
    Tu veux dire que le fichier "param_carac" n'est pas au même format à chaque ligne ? Certaines lignes contiennent 3 champs et d'autres 2 champs ???

    A partir de "toto", tu récupères "toto:500:reseau" puis tu en extraits "500" ok.
    A partir de "500" tu récupères "500:A:reseau:". Et que fais-tu ensuite ??? A quoi servent les 3 lignes "admin:A:" et "etude:C:" et "reseau:B" ???
    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

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

Discussions similaires

  1. Comment éviter les doublons dans une ComboBox
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 27/07/2017, 16h03
  2. Comment éviter les doublons dans TComboBox ?
    Par petitclem dans le forum C++Builder
    Réponses: 3
    Dernier message: 28/04/2009, 14h49
  3. [Upload] comment éviter les doublons en upload ?
    Par pilou1420 dans le forum Fichiers
    Réponses: 3
    Dernier message: 31/05/2007, 14h28
  4. publipostage : comment éviter les doublons?
    Par Christophe93250 dans le forum Access
    Réponses: 15
    Dernier message: 03/01/2006, 12h08
  5. Comment éviter les doublons dans ma table
    Par einegel dans le forum Bases de données
    Réponses: 3
    Dernier message: 09/11/2004, 12h18

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