Python'dan ikili dosyaları çalıştırmak için altişlemci modülünü kullanıyorum. o tamamladığından SONRA bunlar neStytut için Python alt işlem çıktısı
proc = subprocess.Popen (command_args, shell=False, stdout=subprocess.PIPE)
out = proc.communicate()[0]
#print the output of the child process to stdout
print (out)
baskı sürecinin çıktısı:
kullanıyorum, ikili tarafından üretilen çıktıyı yakalamak için. Program çıktığında bu çıktıyı stdout'a basabiliyorum zaten var mı? Çıktının ne olduğunu görmem gerekiyor çünkü bu programlar uzun süre çalışabilir.Yardımlarınız için teşekkürler.
Boşver adamlar, ben çözüm buldum: 'Temel olarak 3 seçenek vardır: kullanın parçacığı başka bir iş parçacığı okumak Ana parçacığı engellemeden. iletişim kurmak yerine stdout, stderr seçeneğini seçin. Bu sayede sadece veri mevcut olduğunda okuyabilir ve engellemekten kaçınabilirsiniz. Bir kütüphaneyi bunu çözelim, twisted açık bir seçimdir. ' – therealtypon
http://stackoverflow.com/questions/4585692/python-nonblocking-subprocess-check-stdout/4585898#4585898 gibi başka bir yanıt bulursanız, lütfen bağlantıyı tıklayın. cevabını yorum olarak kendi sorusuna kopyalamak yerine. – phooji
Bunun için üzgünüz. Ben yorumda nokta stackoverflow.com/questions/4585692/…distile özü olduğunu düşündüm Bu sefer aklımızda tutacağım – therealtypon