3つのフォルダーを持つディレクトリがあります。これら 3 つのフォルダーの各フォルダーには、別の数のフォルダーがあります。そして、これらのフォルダーの各フォルダーには、これらの各ファイルでコードを実行したいファイルのリストがあります。たとえば、次のようになります。 MainFolder には SubFolder1、SubFolder2 があります。SubFolder1 には、SubSubFolder1、SubSubFolder2、SubSubFolder3 があります。SubFolder2 には SubSubFolder1、SubSubFolder2 があります。各 SunSubFolders には多数のファイルがあります。MainFolder パスを指定し、各サブフォルダーとサブサブフォルダーを通過し、このサブサブフォルダー内のファイルに対して操作を行い、このサブサブフォルダーの名前でワークスペースを保存するスクリプトが必要です。したがって、上記の例では、SubSubFolder1 内のファイルに対していくつかの作業を行った後、結果のワークスペースが SubSubFolder1.mat という名前の場所に保存されます。
これは私にとってかなり緊急であるため、誰かが私を助けてくれるかどうか尋ねています. 親切なご支援とご配慮に感謝いたします。
アップデート:
私はそれを行いましたが、別の問題が発生し、SubSubFolders 内のファイルにアクセスして操作を実行しようとすると、「ファイル '[00000000].pgm' を開けませんでした。そのようなファイルまたはディレクトリがありません」と表示されます。この問題を解決するには?
これは私のコードです:
D = rdir('Hussein/*/*'); %// List of all sub-directories
for k = 1:length(D)
currpath = D(k).name; %// Name of current directory
[pathstr, name, ext] = fileparts(currpath);
%// Operate on all .txt files in currpath
l = dir(fullfile(currpath, '*.pgm')); %// Listing of all relevant files
filenames={l.name}';
nfiles=length(filenames)
%images=zeros(240, 320, 1000);
idx=1;
strtidx=1;
endidx=nfiles;
step=1;
waitbar(0);
for i=strtidx:step:endidx
fn=fullfile('', filenames{i});
tmp=padarray(ut_pgmread(fn), 1, 'post');
%figure(1); imagesc(tmp); colormap(jet(4096)); colorbar;
images(:, :, idx)=tmp; idx=idx+1;
waitbar(i/nfiles);
end
close(findall(0,'Tag','TMWWaitbar'));
name='/Volumes/Untitled/work/'+name;
save (name, '-v7.3');
%for m = 1:length(F)
% currfile = F(m).name; %// Name of current file
%// Do something with currfile...
%end
%// Write output (if any) in currpath...
end;