]> git.lizzy.rs Git - plan9front.git/blob - sys/src/cmd/basename.c
devpccard, pci: fix pccard support and handle pci expansion roms
[plan9front.git] / sys / src / cmd / basename.c
1 #include <u.h>
2 #include <libc.h>
3
4 void
5 main(int argc, char *argv[])
6 {
7         char *pr;
8         int n, dflag;
9
10         dflag = 0;
11         if(argc>1 && strcmp(argv[1], "-d") == 0){
12                 --argc;
13                 ++argv;
14                 dflag = 1;
15         }
16         if(argc < 2 || argc > 3){
17                 fprint(2, "usage: basename [-d] string [suffix]\n");
18                 exits("usage");
19         }
20         pr = utfrrune(argv[1], '/');
21         if(dflag){
22                 if(pr){
23                         *pr = 0;
24                         print("%s\n", argv[1]);
25                         exits(0);
26                 }
27                 print(".\n");
28                 exits(0);
29         }
30         if(pr)
31                 pr++;
32         else
33                 pr = argv[1];
34         if(argc==3){
35                 n = strlen(pr)-strlen(argv[2]);
36                 if(n >= 0 && !strcmp(pr+n, argv[2]))
37                         pr[n] = 0;
38         }
39         print("%s\n", pr);
40         exits(0);
41 }