Answers:
用这个:
unzip -l filename | awk 'BEGIN { OFS="" ; ORS="" } ; { for ( i=4; i<NF; i++ ) print $i " "; print $NF "\n" }' | xargs -I{} rm -v {}
如果您对此表示怀疑,请使用它(将提示您进行确认)
unzip -l filename | awk 'BEGIN { OFS="" ; ORS="" } ; { for ( i=4; i<NF; i++ ) print $i " "; print $NF "\n" }' | xargs -I{} rm -iv {}
awk '{print $4}'
-带有空格的文件名可能在$4 $5 $6 ...
。:)
unzip -l foo.zip | awk 'NR>3{print $NF}' | egrep -v '\--|files'|xargs rm -r
unzip -Z -1 <filename.zip> | xargs -I{} rm -v {}
做这项工作是因为-Z
调用了zipinfo
实用程序和-1
选项,告诉它仅打印文件名
您可以通过man unzip
和man 1 zipinfo
命令找到关于此的更多详细信息
如果要在意外解压缩后清理目录而不先创建文件夹,则可以创建该文件夹,然后将其解压缩,然后:
rm -r ` ls folder `
“`”对于链接命令超级有用,但是它非常文字。
注释改善了这个答案,如果您想确保也删除隐藏文件(您可能会这样做),请执行此操作
rm -r ` ls -A folder `
ls -a
)。
ls -A
为避免列表中出现错误,.
以及..
要在Nautilus中执行此操作(不使用命令行),您可以导航到意外提取文件的位置,通过单击“修改”选项卡对文件进行排序,然后选择并删除所有标有您确切时间的文件运行unzip命令。
unzip -Z -1 /path/to/zip/file.zip | xargs -I{} rm -rf {}
-i
编辑。:)