Comment diff de fichiers et les flux de sortie “à la volée”?

J'ai besoin de créer un fichier diff en utilisant le standard UNIX diff de commande avec python sous-processus module. Le problème est que je doit comparer les fichiers et les flux sans créer de tempopary fichier. J'ai pensé à utiliser des canaux nommés via os.mkfifo méthode, mais n'a pas atteint aucun bon résultat. S'il vous plaît, pouvez-vous écrire un exemple simple sur la façon de résoudre ce genre de choses? J'ai essayé comme ceci:

fifo = 'pipe'
os.mkfifo(fifo)
op = popen('cat ', fifo)
print >> open(fifo, 'w'), output
os.unlink(fifo)
proc = Popen(['diff', '-u', dumpfile], stdin=op, stdout=PIPE)

mais il semble comme diff ne voit pas le deuxième argument.

InformationsquelleAutor Enchantner | 2010-01-07