Period in remote's name is breaking config via environment variable

What is the problem you are having with rclone?

rclone's config file docs instruct to set config names using the name of the remote.

export RCLONE_CONFIG_MYS3_TYPE=s3

Unfortunately, my remote name has a period in it, which denies me from exporting an environment variable:

> rclone listremotes
mywebsite.com

How can one make a rclone config via environment variables, with a period in the remote's name?

Run the command 'rclone version' and share the full output of the command.

> rclone version
rclone v1.63.1
- os/version: darwin 12.6 (64 bit)
- os/kernel: 21.6.0 (arm64)
- os/type: darwin
- os/arch: arm64 (ARMv8 compatible)
- go/version: go1.20.6
- go/linking: dynamic
- go/tags: none

It is rather simple. Do not use . in remote's name if you need to use environment variables.

Only uppercase letters, lowercase letters, and underscores from so called portable character set are allowed in environment variables names.

When remotes' names:

  • May contain number, letter, _, -, ., +, @ and space.
  • May not start with - or space.
  • May not end with space.

Starting with rclone version 1.61, any Unicode numbers and letters are allowed.

When you need to use both you have to use common characters set.

2 Likes

Note that you can set environment variables with . in using env, eg

env "a.b=c" rclone ...

Not allowing . is purely a shell limitation.

Its probably a good idea to avoid them though to keep your life easy!

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.