linux C 下 如何检查 sftp服务器上是否存在某文件?

yfannnnn 2015-11-26 02:32:53
linux C 下 如何检查 sftp服务器上是否存在某文件?

本来想通过下面的方法做, 貌似也不太可靠、
1:通过sftp连到服务器。
2:



sftp_handle = libssh2_sftp_open(sftp_session, "1.txt", LIBSSH2_FXF_READ, 0);
if(NULL != sftp_handle)
{
sftp_handle = NULL;
g_count.check_remote_wlanfile_existed++;
return 0;
}

usleep(50);
do
{
sftp_handle = libssh2_sftp_open(sftp_session, filename,
LIBSSH2_FXF_WRITE | LIBSSH2_FXF_CREAT | LIBSSH2_FXF_TRUNC,
LIBSSH2_SFTP_S_IRUSR | LIBSSH2_SFTP_S_IWUSR |
LIBSSH2_SFTP_S_IRGRP | LIBSSH2_SFTP_S_IROTH );

if( !sftp_handle && (libssh2_session_last_errno(session) != LIBSSH2_ERROR_EAGAIN))
{
goto shutdown;
}
} while (!sftp_handle);
用libssh2_sftp_open 先读,再用libssh2_sftp_open写创建文件总是失败,不加前面的读,就没问题。
不知道是那里用的有问题。
...全文
920 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_43211737 2018-09-15
  • 打赏
  • 举报
回复
兄弟,解决了吗,我的程序类似你这种问题,能get不能put

69,374

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧