[root@hadoop01 sqoop-java]# dirname --help
用法:dirname [选项] 名称...
Output each NAME with its last non-slash component and trailing slashes
removed; if NAME contains no /'s, output '.' (meaning the current directory).
-z, --zero separate output with NUL rather than newline
--help 显示此帮助信息并退出
--version 显示版本信息并退出
Examples:
dirname /usr/bin/ -> "/usr"
dirname dir1/str dir2/str -> "dir1" followed by "dir2"
dirname stdio.h -> "."
输出给定参数的父路径;
例如:/p1/p2
[root@hadoop01 sqoop-java]# dirname /p1/p2
/p1
# /p1/p2/
[root@hadoop01 sqoop-java]# dirname /p1/p2/
/p1
#/p1/p2/p3
[root@hadoop01 sqoop-java]# dirname /p1/p2/p3
/p1/p2
可以看出dirname 返回给定目录的父路径。
多个地址隔开,返回的是
[root@hadoop01 sqoop-java]# dirname /data/er /data1/as
/data
/data1
如果给定的是文件如: conf.g
[root@hadoop01 sqoop-java]# dirname conf.g
.
返回的是当前的目录。
和这个命令对应的
basename
[root@hadoop01 sqoop-java]# 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 显示此帮助信息并退出
--version 显示版本信息并退出
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"
移除所有的目录,保留文件名。