关于解压缩的问题

请问
如果我要解压缩多个 zip 文件到每个不同的文件夹(原压缩文件的各个同名文件夹)

网上搜索的:
.gz
gunzip .gz
for ARK in ./
.gz; do gunzip $ARK; done
.bz2
bunzip2 *.bz2
.tar.gz
for file in *.tar.gz; do tar -zxf “${file}”; done
.tar.bz2
for file in *.tar.bz2; do tar -jxf “${file}”; done
.zip
for file in *.zip; do unzip “${file}”; done
以上只能解压到当前文件夹

未找到解压缩到同名文件夹的命令

实例:
文件夹下有 1.zip 2.zip 3.zip ,现欲将其分别解压缩到 /1 /2 /3 ,但不想一个一个的解压缩。
请问如何解决?

看不懂你试图表达什么。

  1. 如果我要解压缩多个 zip 文件到每个不同的文件夹(原压缩文件的各个同名文件夹)

解压多个 zip 文件到每个不同的文件夹,这是解压的默认行为,不知道为什么要强调一下。括号里面说明的内容更是不懂,同名文件夹只能存在一个,哪来的「各个」?

  1. 文件夹下有 1.zip 2.zip 3.zip ,现欲将其分别解压缩到 /1 /2 /3 ,但不想一个一个的解压缩。请问如何解决?

你自己在提问之前就已经回答过自己了啊!

for file in *.zip; do unzip "${file}"; done
1赞

2 用前面的命令,会直接将 3 个包里的文件都解压缩到当前目录,而不会分别在当前目录新建每个压缩文件的同名文件夹,然后解压缩到 /1 /2 /3 。
所以我想知道 unzip 是否有创建同名目录再解压的命令。这样修改前面的
for file in *.zip; do unzip “${file}”; done

说不定就可以实现目标了

(原压缩文件的各个同名文件夹)应该修正为“原压缩文件相对应的同名文件夹”

关于 1
一 我回去新建了 3 个 zip 文件,结果出现了解压缩选项,不知道为什么下午下的十几个 zip 格式的漫画,全选后没有出现解压缩选项,可能是个例。

二实验表明,解压多个 zip 文件是,被解压缩的文件均直接解压缩到当前目录。
实验过程如下:
在桌面新建 文件夹 1、文件夹 2 和文本文件 3
将此 3 个东西分别压缩再依次命名为 1.zip、2.zip、3.zip
选取 1.zip、2.zip、3.zip 并使用右键菜单里的”在此解压缩归档,自动探测子文件夹“解压缩
结果得到 文件夹 1、文件夹 2 和文本文件 3 而不是得到名为 1、2 和 3 的 3 个文件夹

find ./ -type f | grep .zip | sed 's/.zip//g' | xargs -i mkdir -p {} && unzip "{}.zip" -d {}

谢谢了……