1
我的問題很簡單,但我沒有找到任何簡單的解決方案。 可以說我有一個主目錄,裏面有N個文件或文件夾,我也有一個模式(只是部分名稱)的文件/文件夾,我想返回完整的目錄。我怎樣才能以簡單的方式做到這一點?我將在下面的例子:使用模式返回完整目錄
main_dir='/home/ddd/main_folder/';
files_in_main_dir=ls(main_dir)
pattern='*Ginger*';
%%% code to return the full path
% ?
%%%
files_in_main_dir=
Cupcake
Donut
Gingerbread
return_path=
/home/ddd/main_folder/Gingerbread
編輯: 這是一個可能的解決方案,但可怕的:
files_in_main_dir=ls(main_dir);
find_ls=strfind(files_in_main_dir,' ');
find_pattern=strfind(files_in_main_dir,pattern);
begin_pattern=find_ls(find(find_ls<find_pattern,1,'last'));
if length(find_ls)>find(find_ls<find_pattern,1,'last'), ...
end_pattern=find_ls(find(find_ls<find_pattern,1,'last')+1);
else
end_pattern=length(files_in_main_dir);
end
pattern=files_in_main_dir(begin_pattern+1:end_pattern-1);
full_dir_pattern=[main_dir,pattern]
兩個建議,爲我的問題的工作。然而這更簡單。奇怪的是,我認爲dir函數不適用於通配符。此外,我認爲行爲是一樣的ls函數返回不薑餅,但如果薑餅是一個文件夾返回裏面。謝謝 – ASantosRibeiro