Copy files over SSH
Efficient File Transfer with Tar and SSH
Quickly transfer directories over SSH using tar. Great for migrations or backups.
Commands
Local to remote:
tar cjf - -C /path/to/local/ <source-dir> | ssh user@remote-host 'tar xjf - -C /path/to/remote/ <target-dir>'
Remote to local:
ssh user@remote-host 'tar cjf - -C /path/to/remote/ <source-dir>' | tar xjf - -C /path/to/local/ <target-dir>
Notes
- Add
--exclude='pattern'to skip files or directories. - Replace
jwithz(i.e.,czf,xzf) to use gzip for faster, but less compressed, transfers.