根据这在网页中,将“/”添加到 rsync 目标的末尾会产生与不添加它不同的结果。
我尝试对此进行测试,但无法验证:
$ mkdir dir{1..3}
$ touch dir1/file
$ rsync -r dir1/ dir2
$ rsync -r dir1/ dir3/
$ ls dir*
dir1:
file
dir2:
file
dir3:
file
有时在目的地附加“/”实际上有用吗?
答案1
当源是文件并且目标目录不存在时,它确实会产生影响。例如,取一个名为file
源的文件:
$ rsync file dest/
file
将在目录内创建一个副本dest
,而$ rsync file dest
file
将制作名为的文件的副本dest
添加(来自评论);如果目录dest
已存在,则在上述两种情况下file
都会创建一个副本。dest
基本示例:
~/test > touch file
~/test > mkdir dest1
mkdir: created directory 'dest1'
~/test > tree
.
├── dest1
└── file
1 directory, 1 file
~/test > rsync file dest1
~/test > rsync file dest2
~/test > rsync file dest3/
~/test > tree
.
├── dest1
│ └── file
├── dest2
├── dest3
│ └── file
└── file
2 directories, 4 files
~/test >