xref: /original-bsd/usr.bin/basename/basename.c (revision 552e81d8)
1 static char *sccsid = "@(#)basename.c	4.1 (Berkeley) 10/01/80";
2 #include	"stdio.h"
3 
4 main(argc, argv)
5 char **argv;
6 {
7 	register char *p1, *p2, *p3;
8 
9 	if (argc < 2) {
10 		putchar('\n');
11 		exit(1);
12 	}
13 	p1 = argv[1];
14 	p2 = p1;
15 	while (*p1) {
16 		if (*p1++ == '/')
17 			p2 = p1;
18 	}
19 	if (argc>2) {
20 		for(p3=argv[2]; *p3; p3++)
21 			;
22 		while(p1>p2 && p3>argv[2])
23 			if(*--p3 != *--p1)
24 				goto output;
25 		*p1 = '\0';
26 	}
27 output:
28 	puts(p2, stdout);
29 	exit(0);
30 }
31