News:

GinGly.com - Used by 85,000 Members - SMS Backed up 7,35,000 - Contacts Stored  28,850 !!

Main Menu

WhereIs utility

Started by aruljothi, Mar 31, 2009, 11:19 AM

Previous topic - Next topic

aruljothi


   #include <Stdio.h>
   #include <alloc.h>
   #include <stdlib.h>
   #include <string.h>
   #include <dos.h>
   #include <conio.h>

   int findfile ( char *file1, char *curPath, int showfilename );
   void showHelp();

   void main()
   {
      char *path                     =            NULL;
      char *ptr                     =            NULL;
      char tmp                        =            'r';
      char curPath[128];
      char *filesTofind[128];
      char envVariable[128];

      int i                         =             0;
      int j                         =             0;
      int k                         =             0;
      int found                      =             0;
      int showFileMode                =             0;
      int verboseMode                =             0;
      int numberOfFilesToFind         =            0;

      if ( _argc == 1 )
      {
         showHelp();
         return;
      }
      else
      {
         strcpy ( envVariable, "PATH" );
         for ( i = 1; i < _argc; i++ )
         {
            if ( ( _argv
  • == '/' ) || ( _argv
    • == '-' ) )
                  {   // Found an option
                     switch ( _argv[1] )
                     {
                        default:
                           printf ("Invalid switch %s
      ",_argv );
                           return;
                        case 's': case 'S':
                           showFileMode = 1;
                           break;
                        case 'v': case 'V':
                           verboseMode = 1;
                           break;
                        case 'n': case 'N':
                           if ( _argc > i + 2 )
                           {
                              i++;
                              strcpy ( envVariable, _argv[ i ]);
                           }
                           break;
                        case 'f': case 'F':
                           break;
                     }
                  }
                  else
                  {
                     break;
                  }
               }
            }

            if ( ( _argv[1][0] != '/' ) && ( _argv[1][0] != '-' ) ) // if no
      options
               i = 1;
            for ( ; i < _argc; i++ )
            {
               filesTofind[numberOfFilesToFind] = ( char * ) calloc ( strlen (
      _argv ) + 1 , 1);
               strcpy ( filesTofind[numberOfFilesToFind], _argv );
               numberOfFilesToFind++;
            }

            if ( numberOfFilesToFind == 0 )
            {
               printf ("No files to find?
      " );
               return;
            }
            ptr = &tmp;
            ptr = getenv( envVariable );
            if ( ptr == NULL )
            {
               printf ( "'%s' Variable not defined in Environment.
        NOTE: Case sensitive
      " , envVariable);
               return;
            }
            path = &tmp;
            path = (char * ) calloc ( strlen( ptr ) + 3 , 1);
            strcpy ( path, ptr );

            //printf ( "PATH:= %s", path );
            //printf ("
      ../--\../--\../--\../--\..");
            i = 0;
            while ( path != '