rsync无法处理包含空白的变量



如果源或目标变量在文件夹名中有空间,我将无法使rsync脚本工作

#!/bin/bash
HOST="root@192.168.1.100"
source="/path/My Files/"
dest="/path/My Files2/"
rsync -avhP --delete "$HOST":"$source" "$dest"

我得到的错误是

receiving incremental file list
rsync: [sender] link_stat "/path/My" failed: No such file or directory (2)
rsync: [sender] change_dir "/root/Files" failed: No such file or directory (2)

任何帮助如何写这将是伟大的

在当前rsync版本中添加选项-s

来自man rsync:

-s--protect args:此选项将所有文件名和大多数选项发送到远程rsync,而不允许远程shell对其进行解释。这意味着空间不会被分割在名称中,任何非通配符的特殊字符都不会被翻译(如~、$、;、&等(。通配符在远程主机上通过rsync(而不是做这件事的外壳(。

相关内容

  • 没有找到相关文章

最新更新