Suppose I want to rsync file foo.txt
on my local machine to file /home/me/somedirectory/bar.txt
on a remote computer, and that somedirectory/
doesn't yet exist. How do I do this?
I tried rsync -e ssh -z foo.txt remotemachine:/home/me/somedirectory/bar.txt
, but I get a rsync: push_dir#3 "/home/me/somedirectory" failed: No such file or directory (2)
error.
(Copying the file without renaming it works, though. That is, this runs fine: rsync -e ssh -z foo.txt remotemachine:/home/me/somedirectory/`)
Best Answer
Just put a trailing slash on your target dir. Something like this:
rsync foo.txt remotemachine:somedirectory/
Assuming that "/home/me" is your home dir on the remote machine, there is no need to specify it in the command line. Also, you don't need to clutter up your rsync with the -e unless you just like to do that.