linux命令之basename
1.basename介绍
linux命令basename是用来从文件路径中获取文件的基本名称
2.basename用法
basename [参数] NAME
|-----------|-----------------------|
| 参数 | 说明 |
| -a | 支持多个参数,并将每个参数视为一个NAME |
| -s | 移除后缀 |
| -z | 使用NUL而不是换行符分隔输出 |
| --help | 显示帮助信息 |
| --version | 显示版本信息 |
[basename参数]
3.实例
3.1.获取文件名称
命令:
basename /root/ztj.txt
[root@rhel77 ~]# basename /root/ztj.txt
ztj.txt
[root@rhel77 ~]#
3.2.获取文件名称,并移除其后缀
命令:
basename -s .txt /root/ztj.txt
[root@rhel77 ~]# basename -s .txt /root/ztj.txt
ztj
[root@rhel77 ~]#
3.3.同时获取多个文件的文件名称
命令:
basename -a /root/ztj.txt /root/zzz.txt
[root@rhel77 ~]# basename -a /root/ztj.txt /root/zzz.txt
ztj.txt
zzz.txt
[root@rhel77 ~]#
3.4.同时获取多个文件的文件名称,并移除其后缀
命令:
basename -a -s .txt /root/ztj.txt /root/zzz.txt
[root@rhel77 ~]# basename -a -s .txt /root/ztj.txt /root/zzz.txt
ztj
zzz
[root@rhel77 ~]#
3.5.获取文件目录
命令:
basename /root/test
OR
basename /root/test/
[root@rhel77 ~]# basename /root/test
test
[root@rhel77 ~]# basename /root/test/
test
[root@rhel77 ~]#
3.6.查看basename版本
命令:
basename --version
[root@rhel77 ~]# basename --version
basename (GNU coreutils) 8.22
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://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.
Written by David MacKenzie.
[root@rhel77 ~]#
3.7.查看basename帮助
命令:
basename --help
[root@rhel77 ~]# basename --help
Usage: basename NAME [SUFFIX]
or: basename OPTION... NAME...
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
-z, --zero separate output with NUL rather than 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"
GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
For complete documentation, run: info coreutils 'basename invocation'
[root@rhel77 ~]#