R/sanitize.R
path_sanitize.Rdpath_sanitize() removes the following:
Unix reserved filenames (. and ..)
Trailing periods and spaces (invalid on Windows)
Windows reserved filenames (CON, PRN, AUX, NUL, COM1, COM2,
COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2,
LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, and LPT9)
The resulting string is then truncated to 255 bytes in length
path_sanitize(filename, replacement = "")
| filename | A character vector to be sanitized. |
|---|---|
| replacement | A character vector used to replace invalid characters. |
https://www.npmjs.com/package/sanitize-filename, upon which this function is based.
# potentially unsafe string str <- "~/.\u0001ssh/authorized_keys" path_sanitize(str)#> [1] "~.sshauthorized_keys"path_sanitize("..")#> [1] ""