Mega Code Archive

 
Categories / C / Beginners
 

UNIX cat like utility

#include<stdio.h> #include<string.h> #include<conio.h> int main(int argc,char* argv[]){ FILE* fp; int i=0; char c; if(argc==1){ fprintf(stderr,"Error using cat... "); exit(2); } if(!strcmp(argv[1],"-w")){ /* This returns 1 if match is found */ if(argc!=3){ fprintf(stderr,"Invalid no. of arguments "); exit(2); } fp=fopen(argv[2],"w"); if(fp==NULL) { fprintf(stderr,"Error in opening file... "); exit(2); } c=getchar(); while(c!=EOF) { fputc(c,fp); c=getchar(); } fclose(fp); } else{ for(--argc;argc>0;argc--){ fp=fopen(argv[++i],"r"); if(fp==NULL){ fprintf(stderr,"File not found...Aborting "); exit(2); } while((c=fgetc(fp))!=EOF) fputc(c,stdout); fclose(fp); } } }