第一种:fgetc fputc

#include<stdio.h>

#include<stdlib.h>

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

{

FILE *src,*dst;

int buf;

if(argc < 3){

fprintf(stderr,"Usage:%s <src_file> <dst_file>\n",argv[0]);

exit(1);

}

src=fopen(argv[1],"r");

if(src == NULL){

perror("fopen():");

exit(1);

}

dst=fopen(argv[2],"w");

if(dst == NULL){

fclose(src);

perror("fopen():");

exit(1);

}

while((buf = fgetc(src)) != EOF)

{

fputc(buf,dst);

}

fclose(dst);

fclose(src);

exit(0);

}

第二种:fgets fputs

#include<stdio.h>

#include<stdlib.h>

#define BUFSIZE 1024

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

{

FILE *src,*dst;

char buf[BUFSIZE];

if(argc < 3){

fprintf(stderr,"Usage:%s <src_file> <dst_file>\n",argv[0]);

exit(1);

}

src=fopen(argv[1],"r");

if(src == NULL){

perror("fopen():");

exit(1);

}

dst=fopen(argv[2],"w");

if(dst == NULL){

fclose(src);

perror("fopen():");

exit(1);

}

while((fgets(buf,BUFSIZE,src)) != NULL)

{

fputs(buf,dst);

}

fclose(dst);

fclose(src);

exit(0);

}

第三种:fread fwrite

#include<stdio.h>

#include<stdlib.h>

#define BUFSIZE 1024

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

{

FILE *src,*dst;

char buf[BUFSIZE];

int n;

if(argc < 3){

fprintf(stderr,"Usage:%s <src_file> <dst_file>\n",argv[0]);

exit(1);

}

src=fopen(argv[1],"r");

if(src == NULL){

perror("fopen():");

exit(1);

}

dst=fopen(argv[2],"w");

if(dst == NULL){

fclose(src);

perror("fopen():");

exit(1);

}

while((n=fread(buf,1,BUFSIZE,src)) > 0)

{

fwrite(buf,1,n,dst);

}

fclose(dst);

fclose(src);

exit(0);

}

转载于:https://blog.51cto.com/zhangmujin/1349926

闲来无事 linux cp命令的三种实现方式相关推荐

  1. linux系统查看FTP用户名密码,Linux的FTP的三种登录方式:

    Linux的FTP的三种登录方式: 我们登录FTP有三种方式,匿名登录.本地用户登录和虚拟用户登录. 匿名登录:在登录FTP时使用默认的用户名,一般是ftp或anonymous. 本地用户登录:使用系 ...

  2. 在linux上MySQL的三种安装方式

    安装MySQL的方式常见的有三种: 方式一:rpm安装 (1) 操作系统发行商提供的 (2) MySQL官方提供的(版本更新,修复了更多常见BUG)www.mysql.com/downloads 关于 ...

  3. linux命令echo的实现,Linux echo命令的使用及三种实现方式

    先给大家介绍下linux中echo命令的使用 echo是打印变量的值或者给定的字符串, 比如,输入echo hello或者echo "hello"都是在控制台打印出hello单词 ...

  4. linux查看php日志命令,linux查看日志的三种命令是什么,linux查看进程命令

    linux查看日志的三种命令是什么Linux查看日志的三个命令是什么,linux查看日志有三个命令:1.查看实时更改日志,代码为[tail-f filename]:2.搜索关键字附近的日志代码为[ca ...

  5. linux监控命令执行,你可能不知道的 即时监控 Linux 使用者执行指令的三种方法...

    原标题:你可能不知道的 即时监控 Linux 使用者执行指令的三种方法 这里介绍如何在 Linux 系统上以管理者权限即时监控一般使用者所执行的任何指令. Linux 的 root 管理者可对系统进行 ...

  6. linux cp -ip,linux cp命令

    五分钟学会使用Linux cp命令 Linux中使用cp命令复制文件(夹),本文就日常工作中常用的cp命令整理如下. 一.复制一个源文件到目标文件(夹). 命令格式为:cp 源文件 目标文件(夹) 这 ...

  7. linux修改文件名的三种方法

    文章目录 前言 一.用mv命令修改文件名 二.使用cp命令修改 三.使用rename命令修改 总结 前言 我们在使用linux系统过程中为了便于记忆或整理维护,经常需要对文件名进行修改,下面文章介绍了 ...

  8. Linux下文件的三种时间戳

    Linux下文件的三种时间标记 三种时间对应关系表 column column column 访问时间 Access atime 修改时间 Modify mtime 状态改动时间 Change cti ...

  9. linux cp命令 前面,盘点Linux命令之Linux cp命令使用大全

    Linux命令有很多,其中Linux cp命令常用的一种,Linux cp命令如何使用,下面IT培训网将为您盘点有关Linux命令之Linux cp命令大全. Linux命令之Linux cp命令详解 ...

最新文章

  1. 张家界举行“火王”争霸赛 众人街头“玩火”
  2. 最全的ASP.NET开源CMS汇总
  3. typedef的详细用法
  4. 【python】详解zipfile模块读取处理压缩文件实例
  5. EPI_H/EPI_V(边缘保持指数,matlab 矢量化编程)
  6. Git 基础(六)—— 工作区和暂存区与 Git 对修改的管理
  7. 实验四 木马的远程控制和清除
  8. 神舟测试软件,神舟战神P5常规性能软件测试_神舟 战神P5-i78172D1_笔记本评测-中关村在线...
  9. OSEK直接网络管理(NM)
  10. freeradius+ldap搭建认证服务器
  11. python的认识从唯物主义_中国大学mooc用Python玩转数据章节答案
  12. cesiumlab v3.0.2—通用模型切片
  13. ffmpeg java 合并_[置顶] ffmpg简介以及用它实现音频视频合并(java)
  14. mysql中explain是什么_MySQL中EXPLAIN的解释_MySQL
  15. js实现图片的随机抽奖
  16. “蔗里最甜”开展新型婚育文化宣传活动
  17. SAP云上自适应跨可用区高可用方案
  18. Spring框架学习路线
  19. 正则表达式的介绍及应用
  20. tyut数据分析考试资料

热门文章

  1. HyperLogLog 算法的原理讲解以及 Redis 是如何应用它的
  2. Mac自定义终端的欢迎页
  3. ionic+angularjs开发hybrid App(环境配置+创建测试项目)
  4. [转]Android NDK几点回调方式
  5. LVS/HAProxy/Nginx负载均衡对比
  6. HTML5 Web app开发工具Kendo UI Web中图像浏览器的使用
  7. 互联网公装企业“inDeco领筑智造”完成A+B轮近1.1亿元融资
  8. Swift-学习Perfect搭建博客
  9. Android 获取keystore SHA1方法
  10. 十周第一次课(5月25日)