--link-dest=DIR
of rsync
只为DIR
取绝对路径名,而DIR
的相对路径名不起作用,这是真的吗?
当我跑的时候
rsync -a --delete --link-dest=dest my\ dir dest2/
rsync -a --delete --link-dest=./dest my\ dir dest2/
源my\ dir
和dest
或./dest
中相同的文件被复制到目标目录dest2
中。
当我跑的时候
rsync -a --delete --link-dest=/tmp/test/backup/dest my\ dir dest2/
源my\ dir
和/tmp/test/backup/dest
中相同的文件很难从/tmp/test/backup/dest
链接到目标目录dest2
。
如果我的猜测是正确的,那么rsync
是如何实现的,从而只为--link-dest
选择一条绝对路径?
Linux中的所有函数,如果采用路径名参数,它们的路径名参数都可以是绝对路径名和相对路径名,这是正确的吗?
谢谢。
发布于 2018-05-16 04:42:51
引用这个rsync
命令页‘S对--link-dest
的描述:
如果DIR是相对路径,则它是相对于目标目录的。
因此,您可以使用相对路径,相对于目标目录。
我不知道“Linux”(我猜您指的是内核提供的用户空间API )与此有什么关系,rsync
不是Linux特有的工具。但是,大多数接受路径的调用都可以采用绝对路径和相对路径;在后一种情况下,路径通常相对于当前目录或提供的文件描述符(在...at
调用中,例如openat
)。(我没有检查所有的电话。)
https://unix.stackexchange.com/questions/444066
复制相似问题