抢Unix的文件名从完整路径(Grab the filename in Unix out of fu

2019-06-23 14:25发布

我试图让"abc.txt"出来的/this/is/could/be/any/path/abc.txt使用Unix命令。 请注意, /this/is/could/be/any/path是动态的。

任何的想法?

提前致谢。

Answer 1:

bash

path=/this/is/could/be/any/path/abc.txt

如果您的路径中有空格,将它包装在"

path="/this/is/could/be/any/path/a b c.txt"

然后解压路径,使用基名功能

file=$(basename "$path")

要么

file=${path##*/}


Answer 2:

basename path给出了文件名,在路径的末尾

编辑:

这可能是值得补充的是一个常见的模式是使用反引号周围命令如`基本名......',这样的UNIX shell将执行命令,并返回其文本值。

因此,要基本名的结果赋值给一个变量,使用

x=`basename ...path...`

和$ x是文件名。



Answer 3:

您可以使用目录名的命令

$ dirname $path


Answer 4:

您可以使用basename /this/is/could/be/any/path/abc.txt



文章来源: Grab the filename in Unix out of full path