| Command | Description | |------|------| | `--name-transform prefix=XXXX` | Prepends XXXX to the file name. | | `--name-transform suffix=XXXX` | Appends XXXX to the file name after the extension. | | `--name-transform suffix_keep_extension=XXXX` | Appends XXXX to the file name while preserving the original file extension. | | `--name-transform trimprefix=XXXX` | Removes XXXX if it appears at the start of the file name. | | `--name-transform trimsuffix=XXXX` | Removes XXXX if it appears at the end of the file name. | | `--name-transform regex=/pattern/replacement/` | Applies a regex-based transformation. | | `--name-transform replace=old:new` | Replaces occurrences of old with new in the file name. | | `--name-transform date={YYYYMMDD}` | Appends or prefixes the specified date format. | | `--name-transform truncate=N` | Truncates the file name to a maximum of N characters. | | `--name-transform truncate_keep_extension=N` | Truncates the file name to a maximum of N characters while preserving the original file extension. | | `--name-transform truncate_bytes=N` | Truncates the file name to a maximum of N bytes (not characters). | | `--name-transform truncate_bytes_keep_extension=N` | Truncates the file name to a maximum of N bytes (not characters) while preserving the original file extension. | | `--name-transform base64encode` | Encodes the file name in Base64. | | `--name-transform base64decode` | Decodes a Base64-encoded file name. | | `--name-transform encoder=ENCODING` | Converts the file name to the specified encoding (e.g., ISO-8859-1, Windows-1252, Macintosh). | | `--name-transform decoder=ENCODING` | Decodes the file name from the specified encoding. | | `--name-transform charmap=MAP` | Applies a character mapping transformation. | | `--name-transform lowercase` | Converts the file name to lowercase. | | `--name-transform uppercase` | Converts the file name to UPPERCASE. | | `--name-transform titlecase` | Converts the file name to Title Case. | | `--name-transform ascii` | Strips non-ASCII characters. | | `--name-transform url` | URL-encodes the file name. | | `--name-transform nfc` | Converts the file name to NFC Unicode normalization form. | | `--name-transform nfd` | Converts the file name to NFD Unicode normalization form. | | `--name-transform nfkc` | Converts the file name to NFKC Unicode normalization form. | | `--name-transform nfkd` | Converts the file name to NFKD Unicode normalization form. | | `--name-transform command=/path/to/my/programfile names.` | Executes an external program to transform. | Conversion modes: ```text none nfc nfd nfkc nfkd replace prefix suffix suffix_keep_extension trimprefix trimsuffix index date truncate truncate_keep_extension truncate_bytes truncate_bytes_keep_extension base64encode base64decode encoder decoder ISO-8859-1 Windows-1252 Macintosh charmap lowercase uppercase titlecase ascii url regex command ``` Char maps: ```text IBM-Code-Page-037 IBM-Code-Page-437 IBM-Code-Page-850 IBM-Code-Page-852 IBM-Code-Page-855 Windows-Code-Page-858 IBM-Code-Page-860 IBM-Code-Page-862 IBM-Code-Page-863 IBM-Code-Page-865 IBM-Code-Page-866 IBM-Code-Page-1047 IBM-Code-Page-1140 ISO-8859-1 ISO-8859-2 ISO-8859-3 ISO-8859-4 ISO-8859-5 ISO-8859-6 ISO-8859-7 ISO-8859-8 ISO-8859-9 ISO-8859-10 ISO-8859-13 ISO-8859-14 ISO-8859-15 ISO-8859-16 KOI8-R KOI8-U Macintosh Macintosh-Cyrillic Windows-874 Windows-1250 Windows-1251 Windows-1252 Windows-1253 Windows-1254 Windows-1255 Windows-1256 Windows-1257 Windows-1258 X-User-Defined ``` Encoding masks: ```text Asterisk BackQuote BackSlash Colon CrLf Ctl Del Dollar Dot DoubleQuote Exclamation Hash InvalidUtf8 LeftCrLfHtVt LeftPeriod LeftSpace LeftTilde LtGt None Percent Pipe Question Raw RightCrLfHtVt RightPeriod RightSpace Semicolon SingleQuote Slash SquareBracket ``` Examples: ```console $ rclone convmv "stories/The Quick Brown Fox!.txt" --name-transform "all,uppercase" STORIES/THE QUICK BROWN FOX!.TXT ``` ```console $ rclone convmv "stories/The Quick Brown Fox!.txt" --name-transform "all,replace=Fox:Turtle" --name-transform "all,replace=Quick:Slow" stories/The Slow Brown Turtle!.txt ``` ```console $ rclone convmv "stories/The Quick Brown Fox!.txt" --name-transform "all,base64encode" c3Rvcmllcw==/VGhlIFF1aWNrIEJyb3duIEZveCEudHh0 ``` ```console $ rclone convmv "c3Rvcmllcw==/VGhlIFF1aWNrIEJyb3duIEZveCEudHh0" --name-transform "all,base64decode" stories/The Quick Brown Fox!.txt ``` ```console $ rclone convmv "stories/The Quick Brown 🦊 Fox Went to the Café!.txt" --name-transform "all,nfc" stories/The Quick Brown 🦊 Fox Went to the Café!.txt ``` ```console $ rclone convmv "stories/The Quick Brown 🦊 Fox Went to the Café!.txt" --name-transform "all,nfd" stories/The Quick Brown 🦊 Fox Went to the Café!.txt ``` ```console $ rclone convmv "stories/The Quick Brown 🦊 Fox!.txt" --name-transform "all,ascii" stories/The Quick Brown Fox!.txt ``` ```console $ rclone convmv "stories/The Quick Brown Fox!.txt" --name-transform "all,trimsuffix=.txt" stories/The Quick Brown Fox! ``` ```console $ rclone convmv "stories/The Quick Brown Fox!.txt" --name-transform "all,prefix=OLD_" OLD_stories/OLD_The Quick Brown Fox!.txt ``` ```console $ rclone convmv "stories/The Quick Brown 🦊 Fox Went to the Café!.txt" --name-transform "all,charmap=ISO-8859-7" stories/The Quick Brown _ Fox Went to the Caf_!.txt ``` ```console $ rclone convmv "stories/The Quick Brown Fox: A Memoir [draft].txt" --name-transform "all,encoder=Colon,SquareBracket" stories/The Quick Brown Fox: A Memoir [draft].txt ``` ```console $ rclone convmv "stories/The Quick Brown 🦊 Fox Went to the Café!.txt" --name-transform "all,truncate=21" stories/The Quick Brown 🦊 Fox ``` ```console $ rclone convmv "stories/The Quick Brown Fox!.txt" --name-transform "all,command=echo" stories/The Quick Brown Fox!.txt ``` ```console $ rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{YYYYMMDD}" stories/The Quick Brown Fox!-20250830 ``` ```console $ rclone convmv "stories/The Quick Brown Fox!" --name-transform "date=-{macfriendlytime}" stories/The Quick Brown Fox!-2025-08-30 1234AM ``` ```console $ rclone convmv "stories/The Quick Brown Fox!.txt" --name-transform "all,regex=[\\.\\w]/ab" ababababababab/ababab ababababab ababababab ababab!abababab ```