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

Linux Discussion :

Comparaison de 2 fichiers ligne par ligne


Sujet :

Linux

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 59
    Par défaut Comparaison de 2 fichiers ligne par ligne
    Bonjour,

    Je commence le script unix et j'ai besoin de comparer 2 fichiers lignes par lignes. Si les 2 lignes sont identiques, on a un statut OK, sinon, modifié

    j'avais pensé à :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    while read line1
    do
    <div style="margin-left:40px">while read line2</div><div style="margin-left:40px">do</div><div style="margin-left:40px"><div style="margin-left:40px">if [ $line1 = $line2 ]
    then
    Statut="OK"
    break 2
    else
    Statut="modifie"
    fi</div></div><div style="margin-left:40px">done < fichier2</div>echo $line1 $Statut
    done < fichier1
    J'ai des erreurs qui remontent "Too many arguments" sur le if. Une idée?

    Merci d'avance

    Si vous connaissez une série de commande plus simples, ça me va aussi ^^

  2. #2
    Membre expérimenté Avatar de quetzacoatl
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 168
    Par défaut
    Sinon vous avez la commande "cmp file1 file2" qui compare deux fichiers et affiche le numéro de ligne de la première différence et rien si identique

  3. #3
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    bah, surtout l'outil diff le fait...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    diff fichier1 fichier2 > resultat
    éventuellement suivi d'un grep et d'un awk suivant ce qu'on veut faire...

  4. #4
    Membre éclairé Avatar de ben.IT
    Homme Profil pro
    Inscrit en
    Janvier 2009
    Messages
    431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 431
    Par défaut
    moi j'utilise la commande cmp. Si les 2 fichiers sont identiques, elle rend le code de retour 0 sinon si différent 1.
    La variable spéciale $? contient le code de retour de la dernière commande exécutée.

    a+,
    ben

Discussions similaires

  1. Réponses: 9
    Dernier message: 03/07/2014, 18h08
  2. Opération sur un fichier et lecture ligne par ligne
    Par teunniq dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 03/06/2014, 17h57
  3. lire fichier .txt (NOTEPAD) ligne par ligne
    Par skambram dans le forum VB.NET
    Réponses: 1
    Dernier message: 06/06/2009, 18h41
  4. lire un fichier de string ligne par ligne
    Par bilzzbenzbilz dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 11/02/2009, 10h44
  5. comparaison de fichiers LIGNE PAR LIGNE
    Par bzhbzh dans le forum Excel
    Réponses: 17
    Dernier message: 15/07/2007, 20h33

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