> Erlang中文手册 > fold_files/5 对目录下的文件按正则表达式进行匹配

filelib:fold_files/5

对目录下的文件按正则表达式进行匹配

用法:

fold_files(Dir, RegExp, Recursive, Fun, AccIn) -> AccOut

对目录 Dir 下的文件按正则表达式 RegExp 进行匹配查找,对符合要求的文件执行函数 Fun。参数 Recursive 表示是否对目录 Dir 进行递归匹配查找,如果为 ture 则是,false 则否。

下面是列出 src 目录下的所有 erl 文件:

filelib:fold_files("./src/", ".*.erl", true, fun(F, AccIn) -> [F | AccIn] end, []).

列出 src 目录下的所有 erl 文件大小的总和:

filelib:fold_files("./src", ".*.erl", true, fun(F, AccIn) -> filelib:file_size(F) + AccIn end, 0).