我正在尝试使用 libssh2 将字符串写入文件。我能做到。
问题是我只能对文件写入一次,我不能附加到文件,并且将参数提供给 libssh2_scp_send
我给出大小,如果大小更大则字符串的实际大小(例如,我给了 50,但字符串有 5 个字符)已创建但有 0 个字节。
我使用的功能:
int s7c_hardware::writeKey(char * filename, char * str)
{
channel = libssh2_scp_send(session, filename, 0777, strlen(str));
char buf[99999];
memcpy(buf, str, strlen(str));
buf[strlen(str)] = '\0';
libssh2_channel_write(channel, buf, strlen(str));
libssh2_channel_free(channel);
channel = NULL;
return 0;
}
最佳答案
现在我明白为什么了! SCP 无法附加到文件,因为这实际上是开始和停止下载,而 SCP 无法做到这一点,但 SFTP 可以!
关于c++ - 使用 libssh2 将字符串写入远程文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44959804/