Soft links semelhantes a atalhos e podem apontar para outro arquivo ou diretório em qualquer sistema de arquivos.

Links físicos também são atalhos para arquivos e pastas, mas não é possível criar um link físico para uma pasta ou arquivo em um sistema de arquivos diferente.

Vejamos as etapas envolvidas na criação e remoção de um link simbólico. Também veremos o que são links quebrados e como excluí-los.

A sintaxe para criar um link simbólico é:

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).

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.

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.

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:

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 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.txtrm 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.

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.