У меня есть сервер django, и я должен загрузить некоторые данные через scp. У меня есть этот вид:Захват вывода scp из python
pathFile = '/home/user1/foo.json'
user = 'user1scp'
server = 'someserver.com'
pathServer = '/var/www/foo.json'
os.system("scp %s %[email protected]%s:%s" % (pathFile, user, server, pathServer))
В окне консоли где страница работает (т.е. там, где я назвал команду «runserver») Я показал этот вывод:
[21/Jul/2016 18:55:12] "GET /someurl/upload HTTP/1.1" 301 0
foo.json 100% 609 0.6KB/s 00:00
Я хочу, чтобы иметь возможность чтобы манипулировать этим выходом, поэтому я могу уведомить пользователя о том, что все файлы (есть несколько файлов для загрузки) загружаются правильно, а какие нет.
Я пробовал решение в этом ответе How to capture stdout output from a Python function call?, но это не сработало. Я попробовал Popen и подпроцесс и не имел никаких результатов. Может быть, я делаю что-то не так?