Linux C编程连载
Linux C编程连载
Linux C编程连载——cp的实现:
- /**********************************************************
- * This program is use to copy src_file to dest_file
- * 1 Execute gcc -o copy copy.c
- * 2 then, copy the execute file "copy" to the /usr/bin
- * You can use command like this : copy src_file dest_file
- * Author : Tan De
- * Time : 2011-04-04
- *********************************************************/
- #include <stdio.h>
- #include <stdlib.h>
- #include <unistd.h>
- #include <sys/stat.h>
- #include <sys/types.h>
- #include <fcntl.h>
- #define BUFF_SIZE 1024
- int main(int argc, char *argv[]){
- int src_file,dest_file;
- int real_read_len;
- unsigned char buff[BUFF_SIZE];
- //argc is not correct
- if(argc!=3){
- printf("Error use copy!\n");
- printf("Example:\n");
- printf("copy src_file dest_file\n");
- exit(1);
- }
- //Open src_file read only
- src_file=open(argv[1],O_RDONLY);
- //If the dest_file is not exsit, then create new one
- dest_file=open(argv[2],O_WRONLY|O_CREAT,666);
- //Open error
- if(src_file<0||dest_file<0){
- printf("Open file error\n");
- printf("Can't copy!\n");
- printf("Please check cmd : copy src_file dest_file\n");
- exit(1);
- }
- //Copy src_file to dest_file
- while((real_read_len=read(src_file,buff,sizeof(buff)))>0){
- write(dest_file,buff,real_read_len);
- }
- //close fd
- close(dest_file);
- close(src_file);
- return 0;
- }
|
【内容导航】 | |
第1页:cp的实现 | 第2页:鼠标 |
第3页:串口编程 | 第4页:基于TCP/IP的文件传输系统 |
第5页:关于双链表“掉链子”的问题 | 第6页:“混沌”贪吃蛇 |
第7页:变参数实现printf |
评论暂时关闭