简单cp
来源:互联网 发布:sql日志查询系统 编辑:程序博客网 时间:2024/04/30 16:21
/* ============================================================================ Name : cp.c Author : mtt Version : Copyright : Your copyright notice Description : Hello World in C, Ansi-style ============================================================================ */#include <stdio.h>#include <stdlib.h>#include <string.h>int main(int argc ,char *argv[]) {FILE *file;FILE *stream; char buffer[1024];if( argc==1){puts("cp: 缺少了文件操作数");puts("use cp src dest");puts("for help cp --help");exit(0);}else{if(strcmp(argv[1],"--help")==0){puts( "\t用法:cp [选项]... [-T] 源文件 目标文件");puts("\t或:cp [选项]... 源文件... 目录");puts("\t或:cp [选项]... -t 目录 源文件...");puts("\t将源文件复制至目标文件,或将多个源文件复制至目标目录。");puts("\t -a, --archive等于-dR --preserve=all");puts("\t -n, --no-clobber不要覆盖已存在的文件(使前面的 -i 选项失效)");puts("\t -b类似--backup 但不接受参数");puts("\t -d等于--no-dereference --preserve=links");}else{if((file =fopen(argv[1],"r+"))==NULL){ printf("不存在%s文件。",argv[1]); exit(-1);}if((stream =fopen(argv[2],"a+"))==NULL){ printf("%s文件不能打开。\n",argv[2]); exit(-1);} while (fgets(buffer,sizeof(buffer),file)!=NULL) {fputs(buffer,stream); }fclose (file);fclose(stream); }}return EXIT_SUCCESS;}