www.cnblogs.com/ruiyqinrui

开源、架构、Linux C/C++/python AI BI 运维开发自动化运维。 春风桃李花 秋雨梧桐叶。“力尽不知热 但惜夏日长”。夏不惜,秋不获。@ruiY--秦瑞

python爬虫,C编程,嵌入式开发.hadoop大数据,桉树,onenebula云计算架构.linux运维及驱动开发.

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

1,linux平台C简单实现本地文件cp

码子及运行效果测试

编译码子;

运行可执行程序;

2,C通过管道进行文件复制

3,下插曲--文件读写文件定位操作;

linux下lseek函数用法;
lseek()
头文件 #include <sys/types.h>
       #include <unistd.h>
protoType:
    off_t lseek(int fildes,off_t offset,int whence);//偏移,根源

函数说明:每一个以打开的文件都有读写位置,当打开文件时通常其读写位置是指向文件开头;
若是以附加的方式打开文件(O_APPEND),读写位置指向文件的末尾;
当read()或write()时,读写位置会随之增加
lseek()用来控制文件的读写位置
参数fildes为已打开的文件描述符,参数offset为根据参数whence来移动读写位置的位移数;
参数whence为下列一种
SEEK_SET 参数offset即为新的读写位置
SEEK_CUR 当前读写位置后增加offset个位移量
SEEK_END 将读写位置指向文件尾后 再增加offset个位移量

当whence值为SEEK_CUR或SEEK_END时,参数offset允许负值的出现
较特色的使用方式
1),欲将读写位置移到文件开头:lseek(int fildes,0,SEEK_SET);
2),将读写位置移到文件尾:lssek(int fildes,0,SEEK_END)
3),取得目前文件位置:lseek(int fildes,0,SEEK_CUR)

返回值:当调用成功返回目前的读写位置,也就是距离文件开头多少个字符,
若有错误则返回-1,errno会存放错误号码哦,亲;
错误代码:EINTR 系统中断;
4,网络文件复制传输

Server端码子;

C客户端码子

4.01 文本文件传输测试;

部分文件内容查看

4.02 unzip文件复制测试

[注,我在前面已经说过了,从S端cp一个文件到C端去,我们的最终目标虽然是最后的文件(不限于zip等压缩包,文本文件等,Dir目录暂不支持),但在C端这边文件的存放目录需与S端的这个Cp文件的地方位置一致,不存在,你就得手动自个来,暂时程序还没实现到这一步,不多时Ruiy将会增加此功能,判断存放的Parent FullPath是否存在,No,则程序自个搞定它]

3,cp 目录测试(故意测试,暂时程序不支持)

 

呵呵,根据码子你就知道为神马了!

5,简单字符串翻转码子(使用堆栈原理);

码子,

测试

 

6,考题,程序问题修复

7,socket线程实例

 

posted on 2014-08-23 11:48  秦瑞It行程实录  阅读(447)  评论(0编辑  收藏  举报
www.cnblogs.com/ruiyqinrui