home *** CD-ROM | disk | FTP | other *** search
- /* unix cat utility, types files, event with wildcard args */
-
-
-
- #include <dos.h>
-
- #include <stdio.h>
-
-
- int cat(char * pcName);
-
-
- #define MAX_BUF 255
-
- char szBreakStr[MAX_BUF + 1];
-
- int iBreak;
-
-
-
-
-
- main(int argc,char * argv[])
- {
-
- struct find_t stFind;
-
-
- int iStat;
-
- if(argc > 2)
- {
- iBreak = 1;
- strcpy(szBreakStr,argv[2]);
- }
- else
- iBreak = 0;
-
-
- iStat = _dos_findfirst(argv[1],_A_NORMAL,&stFind);
-
-
- while(iStat == 0)
- {
-
- cat(stFind.name);
-
- iStat = _dos_findnext(&stFind);
- }
-
-
- }
-
-
-
- int cat(char * pcName)
- {
- FILE * fp;
- char szBuffer[MAX_BUF + 1];
- int iLen;
- char * pc;
-
- fp = fopen(pcName,"r");
-
- while(!feof(fp))
- {
- pc = fgets(szBuffer,MAX_BUF,fp);
-
- if(pc == NULL)
- break;
-
- iLen = strlen(szBuffer);
-
- if(szBuffer[iLen -1] == '\n')
- szBuffer[iLen -1] = '\0';
-
- printf("%s\n",szBuffer);
-
- }
-
- fclose(fp);
-
- if(iBreak)
- printf("%s\n",szBreakStr);
-
- return(0);
- }
-
-