c语言ssh库

lukygt 2009-07-09 02:29:14
想通过代码使用ssh连接到一个服务器上,然后执行一些命令和拷贝文件什么的,以前没做过,想资讯下有什么比较好的方式。
在网上看了些,有个libssh2还有个libssh,这两个有什么区别吗?还有最好能帮忙提供些实例代码,看了些libssh2的文档,都是英文的十分郁闷,谁有中文的API说明也好。还有做这样东西会不会有什么特别需要注意的地方?

谢谢
...全文
655 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Sunm999 2010-01-19
  • 打赏
  • 举报
回复
我也是用了LIBSSH2,但是lib库加载总出现导入问题,还请LZ指点一下?
以下是错误信息:
Linking...
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_session_disconnect_ex
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_sftp_shutdown
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_sftp_close_handle
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_sftp_readdir_ex
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_sftp_open_ex
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_sftp_mkdir_ex
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_session_set_blocking
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_sftp_init
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_userauth_publickey_fromfile_ex
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_userauth_password_ex
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_hostkey_hash
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_session_free
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_session_startup
ssh2.obj : error LNK2001: unresolved external symbol __imp__libssh2_session_init_ex
Debug/ssh2.exe : fatal error LNK1120: 14 unresolved externals
Error executing link.exe.
Creating browse info file...

ssh2.exe - 15 error(s), 0 warning(s)
csKerrydn 2009-10-13
  • 打赏
  • 举报
回复
我最近也在研究这个ssh,找了很多资料,但是putty、openssh这些源码很头疼。
后来找到了这个libssh2还比较好,但是我也遇到和楼主一样的问题,就是想通过ssh打开的通道来执行一些命令,可是一直没有搞清楚
int libssh2_channel_shell(LIBSSH2_CHANNEL *channel);

int libssh2_channel_exec(LIBSSH2_CHANNEL *channel, const char *message);
这两个函数具体怎么用

看到楼主好像解决了,能不能分享一下呢,非常感谢!!!!!
lukygt 2009-07-13
  • 打赏
  • 举报
回复
呵呵,关于这个问题已经解决百分之60了,还有一些关于超时的东西不明白,这个帖子结了,再开一个。
ies_sweet 2009-07-11
  • 打赏
  • 举报
回复
帮顶
关注
lukygt 2009-07-11
  • 打赏
  • 举报
回复
头疼……
lukygt 2009-07-10
  • 打赏
  • 举报
回复
自己查了一些:
#include <libssh2.h>

int libssh2_channel_process_startup(LIBSSH2_CHANNEL *channel, const
char *request, unsigned int request_len, const char *message, unsigned
int message_len);

int libssh2_channel_shell(LIBSSH2_CHANNEL *channel);

int libssh2_channel_exec(LIBSSH2_CHANNEL *channel, const char *mes-
sage);

int libssh2_channel_subsystem(LIBSSH2_CHANNEL *channel, const char
*message);


哎,我去试试
lukygt 2009-07-10
  • 打赏
  • 举报
回复
我这别哥们会英文的不会技术,会技术的英文没那么好的……,通病
Fleeboy 2009-07-10
  • 打赏
  • 举报
回复
找个会英文的哥们帮你看看不就行了嘛
lukygt 2009-07-10
  • 打赏
  • 举报
回复
貌似要沉了,帮忙哈
ernst20020530 2009-07-09
  • 打赏
  • 举报
回复
關注
lukygt 2009-07-09
  • 打赏
  • 举报
回复
PUTTY?这个东西有点太大了吧……其实我只想用其中很小很小的功能,不需要太多的处理。最需要的只是一个简单libssh2的接口介绍一类的,它自己带的代码没有怎么执行命令的
ma100 2009-07-09
  • 打赏
  • 举报
回复
PUTTY的源代码要是能看懂就可以拿来用了
luc_cj 2009-07-09
  • 打赏
  • 举报
回复
顶下,unix网络编程里面都没有谈到ssh,不知道算不算是新知识
大前置 2009-07-09
  • 打赏
  • 举报
回复
帮顶~~~

69,371

社区成员

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

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