Възможен дубликат:
прочетете stdout на подпроцес ред по ред
Създавам своя собствена услуга, подобна на Dropbox, с малък индикаторен аплет за лесно използване. Използвам rsync при първото стартиране на приложението и искам аплетът на индикатора да има елемент с това, което се случва с него.
И така, това, което искам и имам нужда от помощ, е: как да стартирам подпроцес, който умира, когато приложението умира? Как да заснема текущия изход на изпълнявания подпроцес?
Моят код е тук.
Опитах това, но изглежда, че няма да работят:
rsyncRun = subprocess.Popen(["rsync","--stats","--progress","-azvv","-e","ssh", "LOCALDIR","REMOTEDIR", "--log-file=/home/daniel/.bareshare/bilderrsync.log"], shell=True, stdout=subprocess.PIPE)
lsyncdRun = subprocess.Popen(["lsyncd",lsyncdconfig], shell=True, stdout=subprocess.PIPE)