gunzip subfolders at once

5 次查看(过去 30 天)
Dave
Dave 2021-10-12
评论: Dave B 2021-10-12
Hello, I have gz files stored in many sub-sub-folders; is there way I can gunzip all files at once into a single folder single_folder without looping over each sub-sub-folder?
C:\Main\Data\subf1\subf2\subf3\subf4\subf5\subf6
The gz files are in subf6
To use gunzip I have to be in subf6
filenames = gunzip(????,'single_folder');
Is there a way to gunzip standing in subf1?

采纳的回答

Dave B
Dave B 2021-10-12
编辑:Dave B 2021-10-12
You can pass wildcards to gunzip (note that the first example does exactly this):
fp = 'C:\Main\Data\subf1\subf2\subf3\subf4\subf5\subf6';
gunzip(fullfile(fp,'*.gz'),'single_folder'); % or maybe you want the output to be fullfile(fp, 'single_folder')?
  3 个评论
Dave
Dave 2021-10-12
on a second note, that is helpful enough since looping does not override single_folder
danke
Dave B
Dave B 2021-10-12
Sounds like it works, sorry I misunderstood the question!
For future reference an alternative strategy is to build up the list of files and pass the list to gunzip
fl=dir(fullfile(fp,'**/*.gz')
fl=fullfile({fl.folder},{fl.name});
gunzip(fl,'single_folder')

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Solver Outputs and Iterative Display 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by