Python: Как я перенаправляю этот вывод?

Я называю rtmpdump через подпроцесс и пытаюсь перенаправить его вывод в файл. Проблема состоит в том, что я просто не могу перенаправить его.

Я пытался сначала настроить sys.stdout в открытый файл. Это работает на, скажем, ls, но не на rtmpdump. Я также пытался установить sys.stderr только для проверки, и он также не работал.

Я пытался затем использовать">> файл" с параметром командной строки, но снова это, кажется, не работает.

Также для записи, по некоторым причинам, Eclipse печатает вывод rtmpdump, даже если я использую subprocess.call вместо subprocess.check_output, и не имея необходимость называть метод печати. Это - черная магия!

Какие-либо предложения?

Править: Вот некоторый пример кода.

    # /!\ note: need to use os.chdir first to get to the folder with rtmpdump!
    command = './rtmpdump -r rtmp://oxy.videolectures.net/video/ -y 2007/pascal/bootcamp07_vilanova/keller_mikaela/bootcamp07_keller_bss_01 -a video -s http://media.videolectures.net/jw-player/player.swf -w ffa4f0c469cfbe1f449ec42462e8c3ba16600f5a4b311980bb626893ca81f388 -x 53910 -o test.flv'
    split_command = shlex.split(command)
    subprocess.call(split_command)
9
задан dmc 20 October 2010 в 21:56
поделиться