我在Linux环境中使用libssh2作为C ++程序,到目前为止,我可以使用libssh2_channel_exec
在远程计算机上启动程序。但是我想将程序的输出重定向到本地机器(即输出应通过ssh传输)。
我想实现以下bash行的相同目标:
$ ssh user@remote ls > local_file.txt
我无法将> local_file.txt
部分指定为command
参数,因为该文件必须写在本地计算机而不是远程计算机中。
那么,如何将远程程序的输出重定向到本地机器?
答案 0 :(得分:2)
你应该使用libssh2_channel_read函数来读取远程标准输出: