dir_ls() is equivalent to the ls command. It returns filenames as a
named fs_path character vector. The names are equivalent to the values,
which is useful for passing onto functions like purrr::map_dfr().
dir_info() is equivalent to ls -l and a shortcut for
file_info(dir_ls()).
dir_map() applies a function fun() to each entry in the path and returns
the result in a list.
dir_walk() calls fun for its side-effect and returns the input path.
dir_ls(path = ".", all = FALSE, recurse = FALSE, type = "any", glob = NULL, regexp = NULL, invert = FALSE, fail = TRUE, ..., recursive) dir_map(path = ".", fun, all = FALSE, recurse = FALSE, type = "any", fail = TRUE) dir_walk(path = ".", fun, all = FALSE, recurse = FALSE, type = "any", fail = TRUE) dir_info(path = ".", all = FALSE, recurse = FALSE, type = "any", regexp = NULL, glob = NULL, fail = TRUE, ...)
| path | A character vector of one or more paths. |
|---|---|
| all | If |
| recurse | If |
| type | File type(s) to return, one or more of "any", "file", "directory", "symlink", "FIFO", "socket", "character_device" or "block_device". |
| glob | A wildcard aka globbing pattern (e.g. |
| regexp | A regular expression (e.g. |
| invert | If |
| fail | Should the call fail (the default) or warn if a file cannot be accessed. |
| ... | Additional arguments passed to grep. |
| recursive | (Deprecated) If |
| fun | A function, taking one parameter, the current path entry. |
#> /opt/R/3.6.2/lib/R/share/R /opt/R/3.6.2/lib/R/share/Rd #> /opt/R/3.6.2/lib/R/share/dictionaries /opt/R/3.6.2/lib/R/share/encodings #> /opt/R/3.6.2/lib/R/share/java /opt/R/3.6.2/lib/R/share/licenses #> /opt/R/3.6.2/lib/R/share/make /opt/R/3.6.2/lib/R/share/sh #> /opt/R/3.6.2/lib/R/share/texmf# Create a shorter link link_create(system.file(package = "base"), "base") dir_ls("base", recurse = TRUE, glob = "*.R")#> base/demo/error.catching.R base/demo/is.things.R #> base/demo/recursion.R base/demo/scoping.Rdir_map("base", identity)#> [[1]] #> [1] "base/CITATION" #> #> [[2]] #> [1] "base/DESCRIPTION" #> #> [[3]] #> [1] "base/INDEX" #> #> [[4]] #> [1] "base/Meta" #> #> [[5]] #> [1] "base/R" #> #> [[6]] #> [1] "base/demo" #> #> [[7]] #> [1] "base/help" #> #> [[8]] #> [1] "base/html" #>dir_walk("base", str)#> chr "base/CITATION" #> chr "base/DESCRIPTION" #> chr "base/INDEX" #> chr "base/Meta" #> chr "base/R" #> chr "base/demo" #> chr "base/help" #> chr "base/html"dir_info("base")#> # A tibble: 8 x 18 #> path type size permissions modification_time user group device_id #> <fs::path> <fct> <fs::> <fs::perms> <dttm> <chr> <chr> <dbl> #> 1 base/CITA… file 956 rw-r--r-- 2020-01-09 12:34:14 root root 51713 #> 2 base/DESC… file 286 rw-r--r-- 2020-01-09 12:34:14 root root 51713 #> 3 base/INDEX file 23.4K rw-r--r-- 2020-01-09 12:34:14 root root 51713 #> 4 base/Meta dire… 4K rwxr-xr-x 2020-01-09 12:34:14 root root 51713 #> 5 base/R dire… 4K rwxr-xr-x 2020-01-09 12:34:15 root root 51713 #> 6 base/demo dire… 4K rwxr-xr-x 2020-01-09 12:34:14 root root 51713 #> 7 base/help dire… 4K rwxr-xr-x 2020-01-09 12:34:14 root root 51713 #> 8 base/html dire… 4K rwxr-xr-x 2020-01-09 12:34:14 root root 51713 #> # … with 10 more variables: hard_links <dbl>, special_device_id <dbl>, #> # inode <dbl>, block_size <dbl>, blocks <dbl>, flags <int>, generation <dbl>, #> # access_time <dttm>, change_time <dttm>, birth_time <dttm>