⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cp.txt

📁 shell编程
💻 TXT
字号:
      1 #include <stdio.h>
      2 #include <fcntl.h>
      3 #include <unistd.h>
      4 
      5 #define COPYMODE 0644
      6 #define BUFFERSIZE 4096
      7 
      8 void oops(char *,char *);
      9 
     10 int main(int ac,char*av[])
     11 {
     12     if(ac!=3)
     13     {
     14         fprintf(stderr,"usage:%s source destination\n",*av);
     15         exit(1);
     16     }
     17 
     18     int in_fd,out_fd;
     19     if((in_fd=open(av[1],O_RDONLY))==-1)
     20     {
     21         oops("can't open",av[1]);
     22     }
     23     if((out_fd=creat(av[2],COPYMODE))==-1)
     24     {
     25         oops("can't creat",av[2]);
     26     }
     27 
     28     int n_chars;
     29     char buf[BUFFERSIZE];
     30     while((n_chars=read(in_fd,buf,BUFFERSIZE))>0)
     31     {
     32         if(write(out_fd,buf,n_chars)!=n_chars)
     33             oops("write errors to ",av[2]);
     34     }
     35     if(n_chars==-1)
     36         oops("read errors from",av[1]);
     37 
     38     if(close(in_fd)==-1||close(out_fd)==-1)
     39         oops("error closing files","");
     40 
     41     return 0;
     42 }
     43 
     44 void oops(char *s1,char *s2)
     45 {
     46     fprintf(stderr,"error:%s",s1);
     47     perror(s2);
     48     exit(1);
     49 }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -