Re[2]: [Erlang] Рекурсивный обход директорий в избранное  новое всё   подписка   модер.  /!\
От: Трурль 
Дата: 24.01.06 05:38
Оценка:14 (1) :))
Здравствуйте, Трурль, Вы некрасиво нифига написали:

Вот так, пожалуй, покрасивше будет.
parse_dir(PathToDir) -> 
    case filelib:is_dir(PathToDir) of
        false -> {error, not_a_dir};
        true ->  Dirs=get_dirs(PathToDir),  {dir,Dirs, get_files(Dirs)}.
    end.

get_dirs(Path) ->
    [Path|lists:append([get_dirs(X)|| X <- filelib:wildcard(Path++"/*"),filelib:is_dir(X)])].

get_files(Dirs) ->
    [{Y,filelib:file_size(Y)}|| Y <- lists:append([filelib:wildcard(X++"/*")||X <- Dirs])].