rsync多个远程目录到本地机器保留目录路径

时间:2013-04-04 17:16:02

标签: rsync

我是否可以这样使用rsync:

rsync -e ssh root@remote.com:/path/to/file:/path/to/second/file/ /local/directory/

还是我必须做点什么?

2 个答案:

答案 0 :(得分:50)

直接来自rsync手册页:

The syntax for requesting multiple files from a remote host is done
by specifying additional remote-host args in the same style as the 
first, or with the hostname omitted.  For instance, all these work:

    rsync -av host:file1 :file2 host:file{3,4} /dest/
    rsync -av host::modname/file{1,2} host::modname/file3 /dest/
    rsync -av host::modname/file1 ::modname/file{3,4}

这意味着您的示例应在第二条路径之前添加空格:

rsync -e ssh root@remote.com:/path/to/file :/path/to/second/file/ /local/directory/

我建议您首先使用-n--dry-run选项进行尝试,以便在实际执行复制(以及可能的删除)之前了解将要执行的操作。

答案 1 :(得分:3)

只是@tonin的一个实际例子。从实时服务器下载特定目录

rsync -av root@123.124.137.147:/var/www/html/cls  \
:/var/www/html/index.php \
:/var/www/html/header.inc \
:/var/www/html/version.inc.php \
:/var/www/html/style.css \
:/var/www/html/accounts \
:/var/www/html/admin \
:/var/www/html/api \
:/var/www/html/config \
:/var/www/html/main \
:/var/www/html/reports .