从coreutils ln
手册:
通常ln不会删除现有文件。使用--force ( -f ) 选项
无条件删除它们,使用--interactive ( -i ) 选项有条件删除它们,
并使用--backup ( -b ) 选项重命名它们。
$ mkdir output
Run Code Online (Sandbox Code Playgroud)
我可以理解这种失败:
$ ln -sT /etc/passwd output
ln: failed to create symbolic link ‘output’: File exists
Run Code Online (Sandbox Code Playgroud)
但是为什么添加-f
也会失败:
$ ln -sfT /etc/passwd output
ln: ‘output’: cannot overwrite directory
Run Code Online (Sandbox Code Playgroud)
是否-f
覆盖仅是符号链接的现有文件,而不覆盖其他类型的文件(目录、常规文件等)?
可以-T
用来当最后一个参数(即目标文件的说法),是现有目录,意图覆盖目录到链接?