系统调用实现ls -l

话不多说,直接上代码:

#include <stdio.h>  
void file_copy(FILE * file1,FILE * file2);
int main(int argc,char *argv[])  
{  
    FILE * fp;  
    if(argc == 1)  
        file_copy(stdin,stdout);  
    else  
        while(--argc > 0)  
        {  
            if((fp = fopen(*++argv,"r")) == NULL)  
            {  
                printf("no such file %s\n",*argv);  
                return 1;  
            }  
            else  
            {  
                file_copy(fp,stdout);  
                fclose(fp);  
            }  
        }  
    return 0;  
} 
void file_copy(FILE * file1,FILE * file2)  
{  
    int c;  

    while((c = getc(file1)) != EOF)  
    {  
        putc(c,file2);  
    }  
}  

 

上一篇:centots & linux 以一个标准文件去修改另一个文件


下一篇:Linux入门所必备的Linux命令和C语言基础