如何从远程服务器下载到本地(不包括文件夹或文件)?
我曾经使用过类似的东西,但排除不起作用......
rsync -avr -P -e ssh --exclude=/path/to/exclude/* user@ipaddress:/home/path/to/copy /home/user/www
有什么建议吗?
答案1
这里的问题很可能出在exclude
rsync 中的过滤器中的路径上。
rsync 文件列表中使用的路径是相对的到 SOURCE 路径。
如果你的目录结构是
/home/path/to/copy
| files_to_copy
| file1
\ file2
\ files_to_exclude
| file3
\ file4
然后如果你发出命令
rsync -avr -e ssh user@host:/home/path/to/copy \
/home/user/www --exclude='files_to_exclude/*'
您将在副本中获得以下结构
/home/user/www
| files_to_copy
| file1
\ file2
\ files_to_exclude
如果您不想复制该files_to_exclude
目录,您可以使用以下命令:
rsync -avr -e ssh user@host:/home/path/to/copy \
/home/user/www --exclude='files_to_exclude'
答案2
我们使用类似的东西
filename=`date +%F`_backup
rsync --verbose --log-file=/backup_logs/"$filename" --progress --stats --compress --rsh=/usr/bin/ssh --recursive --times --perms --links --delete --exclude '*.zip' user@remoteMachine:/data/documents/ /local/data/documents/