basename
Linux basename command is used to strip directory and suffix from filenames. This command can be used to remove the extensions of a filenames.
DEFINITION
basename - strip directory and suffix from filenames
USAGE
basename NAME [SUFFIX]
basename OPTION... NAME...
DESCRIPTION
Print NAME with any leading directory components removed. If specified, also remove a trailing SUFFIX.
Mandatory arguments to long options are mandatory for short options too.
-a, --multiple
support multiple arguments and treat each as a NAME
-s, --suffix=SUFFIX
remove a trailing SUFFIX; implies -a
-z, --zero
end each output line with NUL, not newline
--help display this help and exit
--version
output version information and exit
EXAMPLES
basename /usr/bin/sort
-> "sort"
basename include/stdio.h .h
-> "stdio"
basename -s .h include/stdio.h
-> "stdio"
basename -a any/str1 any/str2
-> "str1" followed by "str2"
As you can see the basename command doesn't trim the extension without specifying the type of the extension to remove.
root@letusstudy:/var/log# ls -lrt boot.log
-rw------- 1 root root 68020 Nov 6 19:00 boot.log
root@letusstudy:/var/log# basename boot.log
boot.log
root@letusstudy:/var/log# basename boot.log .log
boot
root@letusstudy:/var/log#
AUTHOR
Written by David MacKenzie.
REPORTING BUGS
GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
Report basename translation bugs to <https://translationproject.org/team/>
COPYRIGHT
Copyright © 2018 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.
SEE ALSO
dirname(1), readlink(1)
No Comments