gpt4 book ai didi

Elixir/Phoenix 扫描目录以查找目录

转载 作者:行者123 更新时间:2023-12-02 17:19:13 28 4
gpt4 key购买 nike

我正在尝试扫描给定的目录并且只需要接收返回的目录。这种方式返回给定 dir 中的所有文件和文件夹:

dir = "/Users/user/releases/"
folders =
File.ls(dir)
|> elem(1)

是否可以过滤文件夹以只保留目录,而不保留单个文件?谢谢!

最佳答案

您可以使用 File.dir?/1 过滤文件/目录列表只取回目录。自 File.ls!/1只返回文件名,而不是完整路径,您还需要加入 dir在将文件名传递给 File.dir?/1 之前使用文件名:

iex(1)> dir = "."
"."
iex(2)> File.ls!(dir) |> Enum.filter(&File.dir?(Path.join(dir, &1)))
["config", "lib", "test"]
iex(3)> dir = "test"
"test"
iex(4)> File.ls!(dir) |> Enum.filter(&File.dir?(Path.join(dir, &1)))
["foo"]

关于Elixir/Phoenix 扫描目录以查找目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44133086/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com