file_size: Calculate file size

Description Usage Arguments Details Value See Also Examples

View source: R/file_size.R

Description

file_size takes a filepath and an optional regular expression pattern. It returns the size of all files within that directory which match the given pattern.

Usage

1
file_size(filepath = getwd(), pattern = NULL)

Arguments

filepath

A character string denoting a filepath. Defaults to the working directory, getwd().

pattern

An optional character string denoting a regular expression pattern. Only file names which match the regular expression will be returned. See the See Also section for resources regarding how to write regular expressions.

Details

The sizes of files with certain extensions are returned with the type of file prefixed. For example, the size of a 12 KB .xlsx file is returned as 'Excel 12 KB'. The complete list of explicitly catered-for file extensions and their prefixes are as follows:

Files with extensions not contained within this list will have their size returned with no prefix. To request that a certain extension be explicitly catered for, please create an issue on GitHub.

File sizes are returned as the appropriate multiple of the unit byte (bytes (B), kilobytes (KB), megabytes (MB), etc.). Each multiple is taken to be 1,024 units of the preceding denomination.

Value

A tibble listing the names of files within filepath which match pattern and their respective sizes. The column names of this tibble are 'name' and 'size'. If no pattern is specified, file_size returns the names and sizes of all files within filepath. File names and sizes are returned in alphabetical order of file name. Sub-folders contained within filepath will return a file size of '0 B'.

If filepath is an empty folder, or pattern matches no files within filepath, file_size returns NULL.

See Also

For more information on using regular expressions, see this Jumping Rivers blog post and this vignette from the stringr package.

Examples

1
2
3
4
5
6
7
8
9
# Name and size of all files in working directory
file_size()

# Name and size of .xlsx files only in working directory
file_size(pattern = ".xlsx$")

# Size only of alphabetically first file in working directory
library(magrittr)
file_size() %>% dplyr::pull(size) %>% extract(1)

davidc92/phsmethods2 documentation built on Jan. 23, 2020, 12:18 a.m.