我想知道用于递归压缩目标目录中所有文件的命令是什么?我尝试使用unzip命令,但是没有用。
我尝试从解压缩目标文件夹中的所有zip文件解压缩命令吗?
我想知道用于递归压缩目标目录中所有文件的命令是什么?我尝试使用unzip命令,但是没有用。
我尝试从解压缩目标文件夹中的所有zip文件解压缩命令吗?
Answers:
使用以下命令。替换<path_of_your_zips>
为ZIP文件的路径和<out>
目标文件夹:
对于GZ文件
find <path_of_your_zips> -type f -name "*.gz" -exec tar xf {} -C <out> \;
要么
find <path_of_your_zips> -type f -name "*.gz" -print0 | xargs -0 -I{} tar xf {} -C <out>
对于ZIP文件
find <path_of_your_zips> -type f -name "*.zip" -exec unzip {} -d <out> \;
要么
find <path_of_your_zips> -type f -name "*.zip" -print0 | xargs -0 -I{} unzip {} -d <out>
-exec
喜欢find . -type f -name "*.gz" -exec tar xzf {} -C <out> \;
?
tar: This does not look like a tar archive
gunzip
有-r
选择权。从man gunzip
:
-r --recursive
Travel the directory structure recursively. If any of the
file names specified on the command line are directories, gzip
will descend into the directory and compress all the files it finds
there (or decompress them in the case of gunzip ).
因此,如果要gunzip
压缩目录中的所有压缩文件(gunzip
当前可以解压缩由gzip,zip,compress,compress -H或pack创建的文件)/foo/bar
及其所有子目录中:
gunzip -r /foo/bar
这也将处理带有空格的文件名。