0001
0002
0003 function varargout = tgz2var(filename,tar_folder,tmp_folder)
0004
0005 tarname = [filename,'.tar.gz'];
0006 tarpath = [tar_folder,'/',tarname];
0007 matname = [filename,'.mat'];
0008 matpath = [tmp_folder,'/',matname];
0009 untar_cmd = ['tar -xvzf',' ',tarpath,' -C ',tmp_folder];
0010
0011 disp(dispconsole('|',tarname,':','untaring','|'));
0012 [s,w] = unix(untar_cmd);
0013 if (s == 0)
0014 disp(dispconsole('|',tarname,':','untargz ok','|'));
0015 disp(dispconsole('|',matname,':','loading','|'));
0016 data = load(matpath);
0017 datanames = fieldnames(data);
0018 for i = 1:length(datanames)
0019 varargout(i) = {getfield(data,datanames{i})};
0020 end
0021 disp(dispconsole('|',matname,':','loaded','|'));
0022 disp(dispconsole('|',matname,':','removing','|'));
0023 [s_rm,w_rm] = unix(['rm ',matpath]);
0024 if ( s_rm == 0)
0025 disp(dispconsole('|',matname,':','removed','|'));
0026 else
0027 disp(dispconsole('|',matname,':','error removing','|'));
0028 end
0029 end