Minix1.5/commands/basename.c
/* basename - print the last part of a path: Author: Blaine Garfolo */
#define NULL 0
main(argc, argv)
int argc;
char *argv[];
{
int j, suflen;
char *c;
char *d;
extern char *rindex();
if (argc < 2) {
std_err("Usage: basename string [suffix] \n");
exit(1);
}
c = argv[1];
d = rindex(argv[1], '/');
if (d == NULL)
d = argv[1];
else
d++;
if (argc == 2) { /* if no suffix */
prints("%s\n", d);
exit(0);
} else { /* if suffix is present */
c = d;
suflen = strlen(argv[2]);
j = strlen(c) - suflen;
if (strcmp(c + j, argv[2]) == 0) *(c + j) = 0;
}
prints("%s\n", c);
}