我尝试使用 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)] = ' ';
libssh2_channel_write(channel, buf, strlen(str));
libssh2_channel_free(channel);
channel = NULL;
return 0;
}
现在我明白了为什么!SCP无法附加到文件中,因为这实际上是开始和停止下载,SCP不能这样做,但SFTP可以!