ln -s
ln
é o comando link. o -s
O sinalizador especifica que o link deve estar macio. -s
também pode ser inserido como -symbolic
.
Por padrão, ln
O comando cria links físicos. O próximo argumento é path to the file (or folder)
que você deseja vincular. (Ou seja, o arquivo ou a pasta para a qual você deseja criar um atalho.)
E o último argumento é o path to link
próprio (o atalho).
Como criar um link simbólico para um arquivo – comando de exemplo
ln -s /home/james/transactions.txt trans.txt
Após executar este comando, você poderá acessar o /home/james/transactions.txt
com trans.txt
. Qualquer modificação para trans.txt
também será refletido no arquivo original.
Observe que este comando acima criaria o arquivo de link trans.txt
no seu diretório atual. Você também pode criar um arquivo vinculado em uma pasta e vincular isso:
ln -s /home/james/transactions.txt my-stuffs/trans.txt
Deve haver um diretório já chamado “my-stuffs” em seu diretório atual, caso contrário o comando gerará um erro.
Como criar um link simbólico para uma pasta – comando de exemplo
Semelhante ao anterior, usaríamos:
ln -s /home/james james
Isso criaria uma pasta com link simbólico chamada ‘james’ que conteria o conteúdo de /home/james
. Quaisquer alterações nessa pasta vinculada também afetarão a pasta original.
Como remover um link simbólico
Antes de remover um link simbólico, confirme se um arquivo ou pasta é um link simbólico, para que você não adultere seus arquivos.
Uma maneira de fazer isso é:
ls -l
A execução deste comando no seu terminal exibirá as propriedades do arquivo. No resultado, se o primeiro caractere for uma letra minúscula L (‘l’), significa que o arquivo / pasta é um link simbólico.
Você também veria uma seta (->) no final indicando o arquivo / pasta para o qual o simlink está apontado.
Existem dois métodos para remover um link simbólico:
Como usar Desvincular para remover um link simbólico
A sintaxe é:
unlink
Isso exclui o link simbólico se o processo for bem-sucedido.
Mesmo se o link simbólico estiver na forma de uma pasta, não acrescente ‘/’, porque o Linux assumirá que é um diretório e unlink
não pode excluir diretórios.
Como usar o rm para remover um link simbólico
Como vimos, um link simbólico é apenas outro arquivo ou pasta apontando para um arquivo ou pasta original. Para remover esse relacionamento, você pode remover o arquivo vinculado.
Portanto, a sintaxe é:
rm
Por exemplo:
rm trans.txt
rm james
Observe que tentar fazer rm james/
resultaria em um erro, porque o Linux assumirá ‘james /’ como um diretório, o que exigiria outras opções, como r
e f
. Mas não é isso que queremos. Um link simbólico pode ser uma pasta, mas estamos preocupados apenas com o nome.
O principal benefício de rm
sobre unlink
é que você pode remover vários links simbólicos de uma só vez, como é possível com os arquivos.
Como encontrar e excluir links quebrados
Links quebrados ocorrem quando o arquivo ou pasta que um link simbólico aponta para o caminho alterado ou é excluído.
Por exemplo, se ‘transaction.txt’ passar de /home/james
para /home/james/personal
, o link ‘trans.txt’ fica quebrado. Toda tentativa de acesso ao arquivo resultará em um erro ‘Não existe esse arquivo ou diretório’. Isso ocorre porque o link não possui conteúdo próprio.
Quando você descobre links quebrados, pode excluir facilmente o arquivo. Uma maneira fácil de encontrar links simbólicos quebrados é:
find /home/james -xtype l
Isso listará todos os links simbólicos quebrados no diretório james
diretório – de arquivos para diretórios para subdiretórios.
Passando o -delete
A opção os excluirá da seguinte maneira:
find /home/james -xtype l -delete
Empacotando
O link simbólico é um recurso interessante dos sistemas Linux e UNIX.
Você pode criar links simbólicos facilmente acessíveis para se referir a um arquivo ou pasta que, de outra forma, não seria conveniente para acessar. Com alguma prática, você entenderá como isso funciona em um nível intuitivo e eles o tornarão muito mais eficientes no gerenciamento de sistemas de arquivos.