Dir Module
Import using: use dir
dir.create(path) / dir.createAll(path)
create creates a single directory (parent must exist). createAll creates directories recursively (mkdir -p). Both return True on success.
use dir
dir.create("mydir") # parent must exist
dir.createAll("a/b/c/d") # creates all ancestors
dir.delete(path) / dir.deleteAll(path)
delete removes an empty directory. deleteAll recursively deletes a directory tree.
use dir
dir.delete("mydir") # must be empty
dir.deleteAll("a") # recursive delete
dir.list(path)
Lists directory entries (filenames). Returns array of strings.
use dir
let entries = dir.list(".")
print(str(entries.length()))
for e in entries
print(e)
end
dir.current()
Returns the current working directory path.
use dir
print(dir.current())
dir.traverse(path, callback)
Depth-first traversal, calls callback for each entry. Returns array of visited paths.
use dir
dir.createAll("test/a")
let visited = dir.traverse("test", fn(path)
print(path)
end)
dir.deleteAll("test")
dir.glob(pattern)
Glob pattern matching (supports *, ?, **). Returns array of matching paths.
use dir
dir.createAll("glob_test/sub")
let files = dir.glob("glob_test/**/*")
print(str(files.length()))
dir.deleteAll("glob_test")