Как я могу перенаправить вывод программы с помощью libssh2?

Я использую libssh2 для программы на C++ в среде Linux, и до сих пор я могу запустить программу на удаленной машине, используя libssh2_channel_exec. Однако я хотел бы перенаправить вывод программы на локальный компьютер (т.е. вывод должен проходить через ssh). Я хотел бы достичь той же цели следующей строки bash:

$ ssh user@remote ls > local_file.txt

Я не могу указать часть > local_file.txt параметра command, потому что файл должен быть записан на локальной машине, а не на удаленной.

Итак, как я могу перенаправить вывод удаленной программы на локальную машину?


person Emiliano    schedule 12.10.2011    source источник


Ответы (1)


вы должны использовать функцию libssh2_channel_read для чтения удаленного стандартного вывода:

http://www.libssh2.org/libssh2_channel_read.html

person Giuseppe Scrivano    schedule 21.07.2012
comment
Мне это больше не нужно, но это приятно знать. Грейзи ;) - person Emiliano; 23.07.2012