R: Find a file or directory under a root directory

magic_path {xfun} | R Documentation

## Find a file or directory under a root directory

### Description

Given a path, try to find it recursively under a root directory. The input path can be an incomplete path, e.g., it can be a base filename, and `magic_path()` will try to find this file under subdirectories.

### Usage

    magic_path(
      ...,
      root = proj_root(),
      relative = TRUE,
      error = TRUE,
      message = getOption("xfun.magic_path.message", TRUE),
      n_dirs = getOption("xfun.magic_path.n_dirs", 10000)
    )

### Arguments

`...` | A character vector of path components.
`root` | The root directory under which to search for the path. If `NULL`, the current working directory is used.
`relative` | Whether to return a relative path.
`error` | Whether to signal an error if the path is not found, or multiple paths are found.
`message` | Whether to emit a message when multiple paths are found and `error = FALSE`.
`n_dirs` | The number of subdirectories to recursively search. The recursive search may be time-consuming when there are a large number of subdirectories under the root directory. If you really want to search for all subdirectories, you may try `n_dirs = Inf`.

### Value

The path found under the root directory, or an error when `error = TRUE` and the path is not found (or multiple paths are found).

### Examples

    ## Not run:
    xfun::magic_path("mtcars.csv")  # find any file that has the base name mtcars.csv

    ## End(Not run)

[Package xfun version 0.29 Index]