png、jpg、bmpで始まるファイル名のリストを3つ作成します。すべてのファイルは、ディレクトリツリー内の画像です:/ year_month/year_month_day /あなたがここに見ることができるよう:MATLABのstringから選択したファイルの特定の名前を含むテーブルを作成します。
./20160203/20160203_png01_test1.png.tmp
./20160203/20160203_jpg01_test2.jpg.tmp
./20160203/20160203_bmp01_test3.bmp.tmp
./20160204/20160204_png01_test1.png.tmp
./20160204/20160204_jpg01_test2.jpg.tmp
./20160204/20160204_bmp01_test3.bmp.tmp
./20160205/20160205_png01_test1.png.tmp
./20160205/20160205_jpg01_test2.jpg.tmp
./20160205/20160205_bmp01_test3.bmp.tmp
たとえば、リスト1のためのすべての拡張子(JPG、BMPやPNG)のために写真の名前が含まれている必要があり、すべてのリストは持っている必要があります。
./20160203/20160203_png01_test1.png.tmp
./20160204/20160204_png01_test1.png.tmp
./20160205/20160205_png01_test1.png.tmp
リスト2は持っている必要があります。
./20160203/20160203_jpg01_test2.jpg.tmp
./20160204/20160204_jpg01_test2.jpg.tmp
./20160205/20160205_jpg01_test2.jpg.tmp
とLIST3同じですが、BMPと...このような
私のコードを見て:
workdir = '/home/user/201602/';
cd(workdir);
command = ['find -name *test*.tmp'];
[status,cmdout] = system(command);
c = strsplit(strtrim(cmdout));
n_files = length(c);
format_id = cell(n_files,1);
for ifile =1:n_files
d = textscan(c{ifile},'%s%s', 'Delimiter','_');
s1 = d{2}{:};
format_id{ifile} = s1;
end
format_id = unique(format_id);
nformat = length(format_id);
for iformat = 1:nformat
templist = [format_id{iformat} '.dat'];
fid = fopen(templist,'w');
for ifiles =1:n_files
fprintf(fid, '%6s\n', c{iformat});
end
fid = fclose(fid);
end
私はリストを取得:png01.dat、jpg01.dat、および罰金であるbmp01.datが、すべてのリストに私は絵の名前だけでなく、それぞれの拡張子を持つ名前だけでなく、最初に、それぞれの拡張子(bmp jpgとpng)を持つファイルだけを選択し、その後それらをリストに送信するために "インデックス"を作成したいと思います。どうすればいい?
私は問題がはっきりしていることを願っています。あなたの助けを前にありがとう。
を全体に追加の新しい行を削除してくださいあなたの質問は読みやすいようになります。さらなる提案として: '' dir'(http://ch.mathworks.com/help/matlab/ref/dir.html) - コマンドを見て、 'system'を置き換えてください。 – Matt