我已经尝试过gzip
和gunzip
命令,但我得到了
gunzip *.gz
gzip: invalid option -- 'Y'
gunzip -S-1800-01-01-000000-g01.h5.gz
gzip: compressed data not read
from a terminal. Use -f to force decompression. For help, type: gzip -h
Run Code Online (Sandbox Code Playgroud)
如果我尝试该-f
选项,则处理单个文件需要很长时间,并且该命令未成功执行。我错过了什么吗?
pl_*_*ock 28
您可以使用以下命令。
转到.gz
文件所在的目录并运行命令:
for f in *.gz ; do gunzip -c "$f" > /home/$USER/"${f%.*}" ; done
Run Code Online (Sandbox Code Playgroud)
它将提取所有具有原始名称的文件并将其存储到当前用户主目录(/home/username
)。您可以将其更改为其他地方。
编辑 :
gunzip *.gz
Run Code Online (Sandbox Code Playgroud)
此命令也将起作用。但是,默认情况下,它会替换原始文件。
Bil*_*lal 11
选项#1:使用单引号解压多个文件(短版)
gunzip '*.gz'
Run Code Online (Sandbox Code Playgroud)
请注意,*.gz
单词放在两个单引号之间,因此 shell 不会将其识别为通配符。
选项 #2:使用 shell for loop 解压缩多个文件(长版)
for g in *.gz; do gunzip $g; done
Run Code Online (Sandbox Code Playgroud)
编辑 :
我刚刚试过:
gunzip -dk *.gz
Run Code Online (Sandbox Code Playgroud)
它奏效了。
-d
解压并k
保留原始文件。
小智 6
Linux 用户:
使用以下命令提取当前目录及其子目录中最小数量的 .gz 文件
gunzip *.gz
Run Code Online (Sandbox Code Playgroud)
使用以下命令提取当前目录及其子目录中任意数量的 .gz 文件
sudo find . -name "*.gz" | xargs gunzip
Run Code Online (Sandbox Code Playgroud)