Rsync 报告一个文件的错误(其他文件复制正常):
rsync:stat“//serverName/destination/.lpt$vpn.251.yiOK8j”失败:没有此文件或目录 (2)
rsync:重命名“//serverName/destination/.lpt$vpn.251.yiOK8j”->“.lpt$vpn.251”:没有此文件或目录 (2)
文件“.lpt$vpn.251.yiOK8j”在“//serverName/destination/”中确实存在
Rsync 参数:
rsync.exe -rltDvP -W --delete --progress “/cygdrive/C/source/Downloads/Unpacked/” “//serverName/destination” --exclude “OK.marker” --modify-window=2'
似乎是文件名中的美元符号或双点导致了这种情况,所以我的问题是如何保证 rsync 可以复制任何 Windows 文件,无论其名称是什么?
Cygwin版本是1.7.9
Rsync版本是3.0.9
答案1
美元符号是 bash 输出参数(变量)值的一种方式。
这个点只是将文件从正常的 ls 中隐藏起来。
该文件真的存在吗?$vpn 可能意味着任何意思。转义 $ 并不常见,所以我想知道为什么有人会用这个名字创建文件,或者该字符串中是否有变量。
这是一个针对比我更有 bash 经验的人提出的问题,但我想我应该提出自己的看法。