Answers:
这是ln
的-f
选项的目的:创建链接之前,它会删除现有的目标文件(如果有)。
ln -sf /path/to/data/folder/month/date/hour/minute/file /path/to/recent/file
将创建/path/to/recent/file
指向的/path/to/data/folder/month/date/hour/minute/file
符号链接,如有必要,替换任何现有文件或符号链接到文件(如果该文件不存在,则可以正常工作)。
如果目录或目录的符号链接已经存在,并且带有目标名称,则将在其中创建符号链接(因此,/path/to/recent/file/file
在上面的示例中将最终得到)。-n
在某些版本的中可用的选项ln
将为您处理目录的符号链接,并在必要时替换它们:
ln -sfn /path/to/data/folder/month/date/hour/minute/file /path/to/recent/file
POSIXln
未指定,-n
因此您通常不能依赖它。的大部分ln
行为是实现定义的,因此您确实需要检查所用系统的细节。如果您使用的是GNUln
,也可以使用-t
和-T
选项,使其在存在目录的情况下完全可预测(即失败,而不是在现有目录中使用相同名称创建链接)。