如何逐一提取大约900个7z文件,这些文件都位于同一个文件夹中(所有文件中只有一个文件)?
我使用的是Ubuntu 10.10。所有文件都位于/home/username/folder1/folder2
。
答案 0 :(得分:18)
7za -y x "*.7z"
以上代码对我有用
答案 1 :(得分:14)
for arc in *.7z
do
7zwhatever "$arc"
done
答案 2 :(得分:7)
for f in *.7z
do
7zr e "$f" &
done
这将提取所有.7z
文件(如果它们是7z格式)到当前目录,而不等待完成。
您的计算机可能是拥有的。你被警告了!
答案 3 :(得分:6)
使用parallel是一种相当方便的方式,总免费进度表;)
ls *.7z | parallel -j+0 --eta '7z x {} >/dev/null'
答案 4 :(得分:3)
7z x "*.7z"
这在ubuntu中对我有用
答案 5 :(得分:0)
除了使用for循环
你也可以将find与exec参数或xargs
结合使用答案 6 :(得分:0)
如果您希望将多个7zip档案提取到Linux中具有相同名称的文件夹,您可以使用:
for archive in *.7z; do 7z x -o"`basename \"$archive\" .7z`" "$archive"; done
例如,如果您有两个7zip档案a.7z
和b.7z
,则会创建两个文件夹a
和b
,并将a.7z
解压缩到文件夹中a
和b.7z
到文件夹b
。
以上命令来自用户this answer on superuser的Vojtech。
答案 7 :(得分:0)
您不需要太复杂。要提取7-Zip存档拆分以乘以多个部分,请使用以下命令:
7z x archive.7zip.0
7-Zip会通知您,您有一个多卷归档文件,并且它解压缩了所有内容。
答案 8 :(得分:0)
可能最简单的方法如下
ls | xargs -n1 7z x
答案 9 :(得分:-1)
最简单的方法是unzip '*.zip'
。
确保您拥有'
标记。