linux 文件路径截取 basename,dirname

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 文件路径截取 basename,dirname相关的知识,希望对你有一定的参考价值。

参考技术A 2.命令格式

3.选项说明

4.常用示例

(1)获取文件名,不包含目录。

(2)获取文件名,不包含目录与后缀。

(3)同时获取多个文件名,不包含目录与后缀。

(4)如果路径最后一个是目录,那么即匹配最后一个目录的名字。

2.命令格式

3.选项说明

4.常用示例

(1)获取目录部分,剥掉文件名。

(2)获取目录部分,剥掉文件名,后跟多个文件路径。

(3)获取目录的目录。即如果文件路径最后一个字符是 /,那么剥离倒数第二个 / 及其后的内容。

(4)如果文件路径中不包含 /,那么输出 . 表示当前目录。

(5)路径是根目录的特殊情况。不剥除任何内容,输出 /。

基于armlinux的shell之文件路径截取

最近写脚本,需要对脚本中函数传递的路径参数进行截取,发现了以下比较好用的方法,记录下:

file=/dir1/dir2/dir3/my.file.txt

我们可以用$ 分别替换获得不同的值:

$file#*/:拿掉第一条/及其左边的字串:dir1/dir2/dir3/my.file.txt

$file##*/:拿掉最后一条/及其左边的字串:my.file.txt

$file#*.:拿掉第一个.及其左边的字串:file.txt

$file##*.:拿掉最后一个.及其左边的字串:txt

$file%/*:拿掉最后条/及其右边的字串:/dir1/dir2/dir3

$file%%/*:拿掉第一条/及其右边的字串:(空值)

$file%.*:拿掉最后一个.及其右边的字串:/dir1/dir2/dir3/my.file

$file%%.*:拿掉第一个.及其右边的字串:/dir1/dir2/dir3/my

以上是关于linux 文件路径截取 basename,dirname的主要内容,如果未能解决你的问题,请参考以下文章

basename命令的详解

Shell脚本——提取目录名

Shell脚本——提取目录名

shell之文件路径截取

基于armlinux的shell之文件路径截取

Linux命令之获取文件或名basename