假设我有一个代表文件完整路径的字符串:
full_path='./aa/bb/cc/tt.txt'
。
如何仅提取文件名tt.txt
?
请不要告诉我使用echo $full_path | cut -d'/' -f 5
。
因为文件可能位于更深或更浅的文件夹中。
数字5
无法在所有情况下应用。
答案 0 :(得分:0)
如果您对python感到满意,那么您可以使用以下代码。
full_path = "path to your file name"
filename = full_path.split('/')[-1]
print(filename)
答案 1 :(得分:0)
使用参数扩展功能。
full_path='./aa/bb/cc/tt.txt'
echo ${full_path%/*}
那会给你输出
./aa/bb/cc
并且可以深入处理任意数量的目录级别,因为它将为您提供最终的所有内容" /"。
编辑:参数扩展非常有用,所以这里有一个快速链接,可以很好地概述可能的内容:http://wiki.bash-hackers.org/syntax/pe
答案 2 :(得分:0)
您可以使用此构造
delete a
from test a
left join test b on a.product_id = b.product_id
and a.name = b.name
and a.id > b.id
where b.product_id is not null