Matlab指令碼 批量提取目標型別的檔案

2021-10-14 12:10:25 字數 2169 閱讀 2290

%

% 尋找目標路徑下目標檔案型別的數目

% date:2021.01

.09% input:

% 資料夾路徑

% 檔案型別(m、txt、data)

% example:

%[a]

=find_files_in_dir

('路徑'

,'m');

%% file content

function

[total_list]

=find_files_in_dir

( start_dir, filetype )

% 將資料夾及其子資料夾新增到搜尋路徑

subdirectories =

genpath

( start_dir )

;% ispc - 確定版本是否適用於 windows(pc

) 平台

if ispc

% 匹配正規表示式

subdirectories =

regexp

( subdirectories,

'[^;]*'

,'match');

else

subdirectories =

regexp

( subdirectories,

'[^:]*'

,'match');

end% strrep - 查詢並替換子字串

%strrep

(str,old,

new)

filetype =

strrep

( filetype,

'.','')

;total_list =

;for i =1:

length

( subdirectories )

%dir

()列出當前資料夾中的檔案和資料夾。

files =

dir( subdirectories);

% 判斷生成資料夾isdir屬性

% isdir=

1,代表資料夾,否則,代表檔案

% 獲得資料夾目錄中的檔案

files =

files(~

[ files.isdir ]);

files =

';% 比較字串(不區分大小寫),相同,返回1,否則,返回0if~

strcmpi

( filetype,

'*')

for j =1:

length

( files )

% 對比檔案的副檔名與目標檔案型別

ifstrcmpi

(file_get_extension

( files

), filetype )

% 獲得匹配檔案的路徑

total_list

= subdirectories

;% 獲得檔名稱

total_list

= files

; end

endelseif~

isempty

( files )

directories =

cell

(length

( files ),1

);[ directories]=

deal

( subdirectories);

total_list =

[ total_list;

[ directories, files ]];

endend

end% 獲得檔案的副檔名

function extension =

file_get_extension

( filename )

extension ='';

% strfind - 在其他字串中查詢字串,返回起始索引

idx =

strfind

( filename,

'.');if

~isempty

( idx )

% 獲得檔案的副檔名

extension =

filename

( idx +

1:end )

;end

matlab指令碼批量處理資料 重新命名 移動

需要批量處理資料,對資料夾下的檔案進行重新命名,然後再移動重新命名後的檔案 clc clear cd e 程式 hd new 檔案存放總目錄 for i 1 100 檔案子目錄名字迴圈 for j 0 9 檔案子目錄名字迴圈 str int2str i int2str j 進入子目錄 str1 in...

利用shell指令碼批量判斷目標ip存活情況

有時候需要批量去判斷目標ip是否存活,乙個乙個去試多麻煩所以寫了個shell指令碼去批量嘗試,原理使用的是去ping目標ip,雖然這種方法受很多因素影響,比如網速,防火牆禁ping等,但是也是一種思路 直接貼上 bin bash date 2018 author id3al fuc 通過ping命令...

利用OpenCV提取目標輪廓

乙個簡單的提取飛機目標影象 二值圖 輪廓的程式 include include include include iplimage g image null iplimage g gray null int g thresh 100 cvmemstorage g storage null char n...