diff options
Diffstat (limited to 'toys/basename.c')
-rw-r--r-- | toys/basename.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/toys/basename.c b/toys/basename.c new file mode 100644 index 00000000..2ea6882c --- /dev/null +++ b/toys/basename.c @@ -0,0 +1,15 @@ +#include "toys.h" + +int basename_main(void) +{ + char *name = basename(toys.optargs[0]); + if (toys.optargs[1]) { + int slen = strlen(toys.optargs[1]); + int name_len = strlen(name); + if (slen < name_len) + if (!strcmp(name+name_len-slen, toys.optargs[1])) + *(name+name_len-slen) = '\0'; + } + puts(name); + return 0; +} |