$ echo 'hello' >name
$ ln name othername
$ ls -l
total 4
-rw-r--r-- 2 kk wheel 6 Jun 25 09:45 name
-rw-r--r-- 2 kk wheel 6 Jun 25 09:45 othername
$ cat othername
hello
$ rm name
$ ls -l
total 2
-rw-r--r-- 1 kk wheel 6 Jun 25 09:45 othername
$ cat othername
hello
Você está fazendo algo muito errado se, removendo um link físico, também remover o outro. Usar rm
ou rm -rf
neste caso não importa, nem importa qual nome é removido.
A remoção de um link físico apenas remove um dos nomes do arquivo. A única maneira de ver que rm -rf
poderia remover os dois nomes é se você usou um nome de arquivo glob que correspondesse a ambos os nomes ou se você excluísse o diretório que continha os dois.
Aparentemente, a partir de comentários, você está realmente usando um aplicativo que cria um link físico para um diretório . Isso é possível em sistemas de arquivos macOS HFS + sob certas condições. Em geral, é muito complicado trabalhar com diretórios vinculados, e seu uso é amplamente limitado a coisas como o próprio software TimeMachine da Apple.
Pergunta Stackoverflow relacionada: O que é o comando Unix para criar um hardlink para um diretório no OS X?
Aponta-se entre as respostas a essa pergunta, que um diretório vinculado rígido precisa ser excluído usando unlink
em vez de rm -r
, pois rm -r
excluiria os conteúdos do diretório ( sob todos os seus nomes).
Veja também: Forçosamente crie link (s) rígido (s) por diretório?