Alioune: http://i1.ytimg.com/vi/p-16uZCXZfw/hqdefault.jpg


2013/9/17 Alioune Dia <[email protected]>

> Salut
> En python diff.py et  uniq.py pourrait être écrit comme ça par exemple:
>
> --diff.py
>
> #!/bin/python
> import difflib
> with open('test.txt')as t1:
>     with open('test1.txt') as t2:
>        diff_gen =difflib.ndiff(
>                t1.readlines(),t2.readlines())
>        out=[]
>        for diff in diff_gen:
>            if "-" in diff or "+" in diff:
>                out.append(
>                    diff.replace("-", "").replace("+","")
>                 )
>        open('test3.txt','wb').write("\n".join(out))
>
>
> --uniq.py
>
> #!/bin/python
> with open('test.txt')as t1:
>         with open('test1.txt') as t2:
>             open('test2.txt','wb').write(
>                 "\n".join(set(t1.readlines()+ t2.readlines()))
>             )
>
> Mais le mieux c'est le shell je pense!
> —Ad
>
>
>
>
>
> Le 17 septembre 2013 22:06, Alioune Dia <[email protected]> a écrit :
> > Salut
> >
> > Le 12 septembre 2013 11:40, Mor Talla Gueye <[email protected]> a
> écrit :
> >> Bonjour la liste,
> >> Je voudrais copie le differentiel de deux fichiers dans un autre j'ai
> fait
> >> un programme mais je comprend pas pour quoi ça marche pas.
> >> Je fichier nomme SignatureDansPostalia devrait contenir le differentiel
> mais
> >> apres execution, j'ai tjrs un fichier vide.
> >>
> >
> > Je ne sais pas ce que Tu veux faire , mais si  'différentiel de deux
> fichiers'
> > veut dire union distinct de deux fichiers test.txt et de text1.txt ,
> > il faut faire :
> >
> > --test.text contient
> >
> > 001
> > 002
> > 003
> > 004
> > 007
> > --test1.txt contient
> > 001
> > 002
> > 003
> > 005
> > 006
> >
> > Ton script uniq.sh doit contenir
> > #!/bin/sh
> > cat test1.txt test.txt |
> > sort                        |
> > uniq                       > text2.txt
> >
> > --
> > Et il donnera comme resultat
> > 001
> > 002
> > 003
> > 004
> > 005
> > 006
> > 007
> >
> > Mais si  'différentiel de deux fichiers' veut dire  le contenu
> > distinct entre les
> > deux fichiers il faut faire le script diff.sh qui contiendra  :
> > #!/bin/sh
> >
> > diff test1.txt test.txt |
> > grep -e  '[<>]'          |
> > sed      's/^<//g'       |
> > sed      's/^>//g'      >test3.text
> >
> > --
> > et qui donnera comme résultat
> >  005
> >  006
> >  004
> >  007
> >
> > Dans ce genre de traitement le shell est le meilleurs choix , mais on
> peut le
> > faire aussi en Python c'est comme tu le sens.
> > --Ad
>
> --
> Ce message a été envoyé à la liste [email protected]
> Gestion de votre abonnement : http://dakarlug.org/liste
> Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
> Le site du DakarLUG : http://dakarlug.org
>
--
Ce message a été envoyé à la liste [email protected]
Gestion de votre abonnement : http://dakarlug.org/liste
Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
Le site du DakarLUG : http://dakarlug.org

Répondre à