How to extract contents of multiple tar files in a loop?
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hello Everyone,
I have multiple .tar.gz files that I'd like to extract contentes of them. For one file I use
path = 'C:\Users\data\example.tar.gz';
gunzip(path, 'example');
untar('example/example.tar','example');
However, I have many of these files (each one has a specific name) and I don't want to go through all of them one by one. I tried to use the following code in a for loop but no luck so far since these are not folders but .tar.gz files
D = 'C:\Users\data\';
S1 = dir(fullfile(D,'*'))
N1 = setdiff({S1([S1.isdir]).name},{'.','..'})
Any idea how I can do that?
0 Kommentare
Akzeptierte Antwort
meghannmarie
am 1 Apr. 2021
Bearbeitet: meghannmarie
am 1 Apr. 2021
Do you mean something like this?
input_folder = 'C:\Users\data\';
file_struct = dir([input_folder '/**/*.tar.gz']);
file_names = {file_struct.name};
files = fullfile({file_struct.folder},file_names);
for f = 1:numel(files)
file = files{f};
untar(file);
end
4 Kommentare
meghannmarie
am 1 Apr. 2021
Look at the help for untar:
untar(tarfilename,outputfolder)
so you would have this:
untar(file,destinationdirectory);
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Data Import and Export finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!