String 从完整路径字符串中提取文件名

String 从完整路径字符串中提取文件名,string,bash,String,Bash,假设我有一个字符串,它表示文件的完整路径: 完整路径='。/aa/bb/cc/tt.txt' 如何仅提取文件名tt.txt 请不要告诉我使用echo$full_path | cut-d'/'-f5 因为文件可能位于较深或较浅的文件夹中 数字5不能应用于所有情况。如果您熟悉python,那么可以使用以下代码段 full_path = "path to your file name" filename = full_path.split('/')[-1] print(filename) 使用参数扩

假设我有一个字符串,它表示文件的完整路径:
完整路径='。/aa/bb/cc/tt.txt'

如何仅提取文件名
tt.txt

请不要告诉我使用
echo$full_path | cut-d'/'-f5

因为文件可能位于较深或较浅的文件夹中


数字
5
不能应用于所有情况。

如果您熟悉python,那么可以使用以下代码段

full_path = "path to your file name"
filename = full_path.split('/')[-1]
print(filename)

使用参数扩展功能

 full_path='./aa/bb/cc/tt.txt'
 echo ${full_path%/*}
这将为您提供输出

 ./aa/bb/cc
并将在任何目录级别上运行,因为它将为您提供最终“/”之前的所有内容


编辑:参数扩展非常有用,因此这里有一个快速链接,可以很好地概述可能的情况:

您可以使用此结构

echo "$full_path" | sed 's/\/.*\///'
希望这将有助于: