Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- find_info(File) ->
- case file:read_file_info(File) of
- {ok, Facts} ->
- case Facts#file_info.type of
- directory -> directory;
- regular -> regular
- end;
- {error,Reason} -> exit(Reason)
- end.
- find_files(Dir,Flag,Ending,Acc) ->
- case file:list_dir(Dir) of
- {ok,A} -> find_files_helper(A,Dir,Flag,Acc,Ending);
- {_,_} -> Acc
- end.
- find_files_helper([H|Tail],Dir,Flag,Acc,Ending) ->
- A = find_info(filename:absname_join(Dir,H)),
- case A of
- directory ->
- case Flag of
- true ->
- find_files(filename:absname_join(Dir,H),Flag,Ending,Acc ++ find_files_helper(Tail,Dir,Flag,Acc,Ending));
- false -> find_files_helper(Tail,Dir,Flag,Acc,Ending)
- end;
- regular ->
- case filename:extension(H) of
- Ending -> find_files_helper(Tail,Dir,Flag,[to_md5_large(H)] ++ Acc, Ending);
- _ -> find_files_helper(Tail,Dir,Flag,Acc,Ending)
- end;
- {error,Reason} -> exit(Reason)
- end;
- find_files_helper([],_,_,Acc,_) -> Acc.
- home/
- a/
- ser.erl
- b/
- c/
- file.erl
- file2.erl
- home/
- a/
- ser.erl
- back.erl
- b/
- c/
- file.erl
- file2.erl
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement