/* * COPYRIGHT: See COPYING in the top level directory * PROGRAMMER: Rex Jolliff (rex@lvcablemodem.com) * PURPOSE: Platform independant delete command */ #include #include #include #include #include #include void convertPath (char * pathToConvert) { while (*pathToConvert != 0) { if (*pathToConvert == '\\') { *pathToConvert = '/'; } pathToConvert++; } } void getDirectory (const char *filename, char * directorySpec) { int lengthOfDirectory; if (strrchr (filename, '/') != 0) { lengthOfDirectory = strrchr (filename, '/') - filename; strncpy (directorySpec, filename, lengthOfDirectory); directorySpec [lengthOfDirectory] = '\0'; } else { strcpy (directorySpec, "."); } } void getFilename (const char *filename, char * fileSpec) { if (strrchr (filename, '/') != 0) { strcpy (fileSpec, strrchr (filename, '/') + 1); } else { strcpy (fileSpec, filename); } } int main (int argc, char* argv[]) { int justPrint = 0; int idx; int returnCode; for (idx = 1; idx < argc; idx++) { convertPath (argv [idx]); if (justPrint) { printf ("delete %s\n", argv [idx]); } else { returnCode = remove (argv [idx]); if (returnCode != 0 && errno != ENOENT) { /* Continue even if there is errors */ #if 0 printf ("Unlink of %s failed. Unlink returned %d.\n", argv [idx], returnCode); return returnCode; #endif } } } return 0; }