今天在代码库中遇到了这一行ln -fs /tmp/Cargo.lock .
,但我-fs
在man ln
.它有什么作用?
PS 该项目在 docker 容器内运行此命令
我也在本地计算机上尝试了此命令,方法是在与给定命令相同的目录路径中创建一个文件并运行。
答案1
标准 Unix 工具以及使用解析命令行选项的标准方法的工具允许将多个单字母选项组合成单个选项字符串(只要各个选项不采用选项参数)1。
由于该实用程序的-f
和-s
选项的ln
定义方式(作为不带参数的选项),该命令ln -fs
与 相同ln -f -s
。
该实用程序的-f
和选项在手册中分别进行了描述(请参阅 参考资料),但简而言之,它们是-s
ln
ln(1)
man ln
-f
强制删除现有目标路径名以允许链接。
-s
创建符号链接而不是硬链接。
(以上摘自POSIX 规范ln
)
1这是命令行实用程序的 POSIX 指南。参见“指南 14”实用程序语法指南。