时间:2010-07-26 00:44:14

标签: linux macos bash rsync

4 个答案:

答案 0 :(得分:6)

答案 1 :(得分:2)

由于您的问题专门针对OS X,根据Apple rsync manual,您可以使用简单的引号或通配符?来完成此操作:

rsync -av host:'file\ name\ with\ spaces' /dest
rsync -av host:file?name?with?spaces /dest

只需要这样做并使用简单的引号就可以完美运行:

rsync -r --partial --progress --exclude=".cvs" --exclude=".svn" --exclude=".git" --rsh=ssh root@datakeep.local:'/volume1/devel/__To\ SORT/___XXXXX\ Saves\ 2011-04' ./Saves2011

答案 2 :(得分:1)

答案 3 :(得分:0)

如果您正在处理脚本中的参数,则可以在OSX上执行此操作:

ESCAPED_SRC="$(echo "$SRC" | tr ' ' '\\ ')"
ESCAPED_DEST="$(echo "$DEST" | tr ' ' '\\ ')"
rsync -ravP "$ESCAPED_SRC" "$ESCAPED_DEST"