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