我在这里阅读了类似的问题,关于删除文件的硬链接时会发生什么,我得到的大多数答案是硬链接被删除,但原始链接仍然存在。但是在我的测试过程中,如果我有
FileA.txt
并且LinkFileA.txt
都在单独的目录中,如果我的rm -rfv
目录包含LinkFileA.txt
,它还去并删除原来的。例子:
home/testing/dira/FileA.txt
home/testing/dirb/LinkFileA.txt
rm -rfv home/testing/dirb/*
删除两个文件dirb
和中的文件dira
。
为什么是这样?
答案1
你所做的事情确实看起来有些奇怪。这是在 Debian 测试 x86_64 上:
jlquinn@cerberus:~/tmp$ mkdir dira dirb
jlquinn@cerberus:~/tmp$ touch dira/fileA.txt
jlquinn@cerberus:~/tmp$ ln dira/fileA.txt dirb/fileAlink.txt
jlquinn@cerberus:~/tmp$ rm -rfv dirb/*
removed 'dirb/fileAlink.txt'
jlquinn@cerberus:~/tmp$ ll dira
total 0
-rw-r--r-- 1 jlquinn jlquinn 0 May 7 13:46 fileA.txt