如题求linux系统下C/C++实现SFTP上传文件的代码,最好有一定的中文注释,谢谢了。

或是,

我看FTP上传的shell写的比较简单,但是,如何能判断是否上传成功哪??

如果想做上传的进度条的话?要如何处理哪?怎么判断上传了百分之多少哪??

有什么好的思路,最好有带注释的程序示例。

谢谢了!!!!

如果我哪问的不明白,请指出,我再补充。

|

可以脚本 except

终端编程,have a look

#include

#include

#include

#include

#include

#include

#include

#include

void do_passwd( int pty, const char *passwd, const char *yes_no );

int main( int argc, char *argv[] )

{

argv[1]="yes";

argv[2]="momentx";

int pty, slave;

char pty_name[PATH_MAX];

int ret;

pid_t child;

if ( argc !=1 ){

fprintf( stderr, "Usage: %s   n", argv[0] );

exit( EXIT_FAILURE );

}

ret = openpty( &pty, &slave, pty_name, NULL, NULL );

if ( ret == -1 ){

perror( "openpty" );

exit( EXIT_FAILURE );

}

child = fork();

if ( child == -1 ){

perror( "fork" );

exit( EXIT_FAILURE );

}

else if ( child == 0 ){

close( pty );

login_tty( slave );

// execl( "/usr/bin/ssh", "ssh","work@your_ip", NULL );

execl( "/usr/bin/sshfs", "sshfs","root@ip:/root/public ","./temp", NULL );

}

close( slave );

printf( "pty name: %sn", pty_name );

//do_passwd( pty, argv[1], argv[2] );

do_passwd( pty, argv[2], argv[2] );

exit( EXIT_SUCCESS );

}

void do_passwd( int pty, const char *passwd, const char *yes_no )

{

char buffer[80];

int ret;

fd_set reads;

int input_passwd = 0;

while(1){

FD_ZERO( &reads );

FD_SET( pty, &reads );

ret = select( pty+1, &reads, NULL, NULL, NULL );

if ( ret == -1 ){

perror( "select" );

break;

}

ret = read( pty, buffer, sizeof(buffer) );

if ( ret

linux sftp 上传文件内容为空,求linux 下 C/c++ 实现SFTP上传文件的代码,或shell 写的如何区分上传是否成功?...相关推荐

  1. 在进行javaIO写文件操作后文件内容为空的情况

    writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("d:\\order.txt"))) ...

  2. java 下载文件内容为空_java 下载文件 内容为空。

    Java日志使用slf4j 配置log4j后,有日志文件 但日志文件内容为空 SLF4J的全称是Simple Logging Facade for Java,即简单日志门面. SLF4J并不是具体的日 ...

  3. java ftp上传文件内容为空

    文件上传成功 但是内容为空 需要加上 ftpClient.enterLocalPassiveMode(); 代码如下: package com.zhuoshi.jcbigdata.spark.jinj ...

  4. Linux 把文件内容发送给用户,linux上给其他在线用户发送信息(wall, write, talk, mesg)...

    linux上给其他在线用户发送信息(wall, write, talk, mesg) 2018-11-30 设置登录提示 /etc/motd文件的用途 /etc/motd即message of tod ...

  5. php删除大文件内容,详解在Linux中清空或删除大文件内容的5种方法

    有时,在处理Linux终端中的文件时,您可能希望清除文件的内容,而无需使用任何Linux命令行编辑器打开它.怎么能实现这一目标?在本文中,我们将借助一些有用的命令,通过几种不同的方式清空文件内容. 警 ...

  6. Linux 技术篇-使用vim命令创建、编辑文件内容实例演示,linux修改文档方法

    vim /etc/sysctl.conf 命令默认进来是浏览模式. 如果这个文件有的话就直接进行修改,没有的话就是创建. 下面这个展示的是创建,后面也注明了新文件: 下面这个展示的就是修改: 默认浏览 ...

  7. linux 批量替换文件内容及查找某目录下所有包含某字符串的文件(批量修改文件内容)

    转自 http://blog.csdn.net/werm520/article/details/49334513 grep -rl '10.100.137.5' | xargs sed -i '10. ...

  8. linux 批量替换文件内容及查找某目录下所有包含某字符串的文件(批量修改文件内容)...

    1. sed grep -rl matchstring somedir/ | xargs sed -i 's/string1/string2/g' 例如: 对象:文件夹 grep -rl 'windo ...

  9. linux 批处理 exe文件内容,Linux_DOS批处理文件,DOS下的可执行文件有三种,分 - phpStudy...

    DOS批处理文件 DOS下的可执行文件有三种,分别是EXE,COM和BAT.其中,EXE和COM文件都是二进制形式的,只有BAT文件是文本形式的,可以直接阅读.因 此,BAT文件和以上二进制可执行文件 ...

最新文章

  1. tensorflow创建张量
  2. php和python哪个工资高-前端,java,php,python工程师哪个最缺 知乎
  3. Android 基于注解IOC组件化/模块化的架构实践
  4. 2021快手美妆行业数据营销报告
  5. centos7搭建hadoop
  6. 查看pcl版本 linux,成功安装 linux pcl (1.8.1版本) python-pcl
  7. flask post json_Flask 和 requests 搭建一个简单的API服务
  8. java 关键字null
  9. 索要ValidateTextBox控件Source Code的朋友rickel****@gmail.com,邮件退回了。各位,与我通信,请不要使用GMAIL,烦。...
  10. 文字处理技术:布局的核心是行布局,难点是换行算法
  11. 数据可视化 基于TMDB数据集的电影数据分析(项目源码 + 数据集 + 课程设计说明书 + 可视化图表+ 运行说明等)
  12. 深度学习在OCR中的应用
  13. 结构光扫描仪(维基百科全翻译版)
  14. 作为程序员如何赚到第一桶金?
  15. 作业---舞台剧 前端页面显示
  16. 这年头Windows电脑还需要杀毒软件吗?
  17. SpringBoot 中dependencies飘红
  18. 读书笔记(二十三):代码整洁
  19. php+时间戳+星座,php 根据日期显示星座的简单示例
  20. 关于测试的一篇论文, 基于web端selenium的自动化测试设计与实现(有需要的联系我 此论文内容缺失,不要直接用 一经发现,后果自负)

热门文章

  1. jhat命令分析java heapdump信息实战
  2. html鼠标指针变化控制
  3. 2023从容地活着:元旦白云山看猫
  4. shell编程100例
  5. Unity 协程回调
  6. 英语中表语从句的概念及其用法,例句(不断更新)
  7. Mac快速查看word文件中的图片
  8. CPU核心数和线程数的关系 *
  9. mysql strict_关于mysql 严格模式 Strict Mode的说明讲解
  10. Spring JDBC的原理与实现