返回列表 发帖
确实需要具体说明
猜着写了一个
7za l -slt "a a.7z" | awk '/^Path =/{a=substr($0,8)}/^Attributes = A/{split(a,b,"\\");c=length(b);if(d<c)d=c;e[c]=e[c]a"\n"}END{printf e[d]}' | xargs -i 7za e "a a.7z" "{}"COPY
大概是说,找出目录层数最多的文件,解压出来
没有考虑层数最多的有多个文件夹里面的文件名是否冲突
也不知道windows、linux里分隔符是否不同
也不知道7za l -slt输出的信息里,是Folder = -还是Attributes = A表示文件
很不严谨,仅供参考
1

评分人数

TOP

返回列表