因此,我的存档管理器在提取 tar.xz 文件时似乎没有保留目录层次结构。现在我的下载文件夹很乱,里面装满了不在适当位置的文件。
我想删除那些并且只删除存档中的那些文件。为此,我试图从输出中匹配每个文件路径的结尾tar tf file.tar.xz
并删除相关文件。
例如,如果输入是:
tor-browser_en-US/Browser/firefox
tor-browser_en-US/Browser/firefox.real
tor-browser_en-US/Browser/fonts/
tor-browser_en-US/Browser/fonts/Arimo-Bold.ttf
我希望输出是:
firefox
firefox.real
Arimo-Bold.ttf
所以我可以删除它们。
我一直在尝试用它来完成此操作,sed 's/.*\/([^\/]+)$/\1/'
但是会出现错误sed: -e expression #1, char 19: invalid reference \1 on 's' command's RHS
,我不确定还能尝试什么。
/\/$/d
删除任何带有尾随的行/
。s|.*/||
删除最后一个/
(如果有的话)和它/
本身之前的所有内容。