SCP
Use tealc scp, tealc rsync, or tealc rclone when the agent is online and the corresponding local tool is installed. All three use the agent’s SSH data connection; they do not require an inbound connection to the target.
For Windows paths, / must be used instead of \:
tealc scp [AGENT_NAME]:C:/PATH/TO/FOLDER .
Quick usage: SCP
The -r flag is included by default.
Transfer files from the client to the agent
tealc scp /PATH/TO/SOURCE/FILE [AGENT_NAME]:/PATH/TO/TARGET/FILE
Transfer files from the agent to the client
tealc scp [AGENT_NAME]:/PATH/TO/TARGET/FILE /PATH/TO/SOURCE/FILE
rsync
Requires the rsync binary to be installed locally.
The -r -v -P flags are automatically included by default, along with any flags you provide. Additional flags like -a can be added as needed.
tealc rsync -a ./local-directory [AGENT_NAME]:/remote/directory
To copy in the other direction:
tealc rsync -a [AGENT_NAME]:/remote/directory ./local-directory
On Windows agents, you can only copy from or to one drive per command. You can copy multiple directories from the same drive, but cannot copy from C: and D: in the same command.
rclone
rclone can be used to mount a folder from the agent to the local machine.
Requires the rclone binary to be installed locally. On macOS, tealc uses rclone nfsmount instead of rclone mount (NFS-based mounting rather than FUSE), which has different local requirements.
tealc rclone [AGENT_NAME]:/remote/path /local/path
Like rsync, rclone accepts additional arguments appended after the paths, passed straight through to the underlying rclone command:
tealc rclone [AGENT_NAME]:/remote/path /local/path --vfs-cache-mode writes
Common flags
scp, rsync and rclone all support:
--log: record the session to a log file--[no-]print: print the generated command instead of running it
scp additionally supports:
-o/--ssh-opts: extra options passed to the underlying SSH command-F/--ssh-config-file: path to an SSH configuration file, passed straight through to the underlyingscpprocess (scp -F ...).
This is different from tealc ssh’s own -F/--ssh-config-file flag. There, the file is only used internally to resolve an agent-name alias and is never passed to the underlying ssh command (see SSH).