Python altişlemi modülüyle standart UNIX diff komutunu kullanarak bir diff dosyası oluşturmam gerekiyor. Sorun, tempopary dosyası oluşturmadan dosya ve akışı karşılaştırmam gerekmesi. os.mkfifo yöntemiyle adlandırılmış yöneltmeler kullanmayı düşündüm, ancak herhangi bir iyi sonuca ulaşmadı. Lütfen, bu şeylerin nasıl çözüleceğine dair basit bir örnek yazabilir misiniz?Dosya ve çıkış akışı "anında" nasıl?
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)
ama ikinci argüman görmüyor diff
gibi görünüyor: Öyle gibi çalıştı.
kontrol Detaylar için, çok
gibi bir kabuk boru hattı ve kullanım süreci ikame gerçekleştirebilmesi, sense Popen' çağrısına 'Stdin = PIPE' geçebilir ve sonra 'proc.stdin.write (data)'. – LeafStorm