Guia do Linux/Iniciante+Intermediário/Comandos diversos/ln: diferenças entre revisões

[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
m 2o exemplo de formatação
Albmont (discussão | contribs)
Um pouco mais de texto, porque este comando pode causar problemas se for mau usado
Linha 9:
: Diretório ou arquivo de onde será feito o link.
; ''link''
: Nome do link que será criado. Se já existe um arquivo de nome ''link'', o comando ''ln'' funcionará de forma errada, criando um link para um outro arquivo. Ver abaixo para mais detalhes.
: Nome do link que será criado.
; ''opções''
; -s
Linha 18:
: Cria um hard link para diretórios. Somente o root pode usar esta opção.
 
=== Tipos de link ===
Existem 2 tipos de links: ''simbólicos'' e ''hardlinks''.
 
Linha 24 ⟶ 25:
Ao contrário dos links simbólicos, não é possí­vel fazer um hardlink para um diretório ou fazer referência a arquivos que estejam em partições diferentes.
 
=== Problemas ===
Observações:
Se o link já existe, o comando ''ln'' dará erro ou fará uma coisa errada. Exemplo (feito na conta usuario; use outra conta para verificar)
 
<pre>
mkdir -p /home/usuario/teste1/arquivos # cria um diretorio
echo "teste1" > /home/usuario/teste1/arquivos/teste1.txt
mkdir -p /home/usuario/teste2/arquivos # cria um diretorio
ln -sv /home/usuario/teste1/arquivos /home/usuario/teste2/arquivos # erro
ls -lart /home/usuario/teste2
ls -lart /home/usuario/teste2/arquivos
</pre>
 
Como pode ser visto pela sequencia acima, o erro foi criar o diretório link ''/home/usuario/teste2/arquivos'', com isso, ao se criar o link simbolico, ele foi colocado como ''/home/usuario/teste2/arquivos/arquivos''.
 
Sequencia certa:
<pre>
mkdir -p /home/usuario/teste1/arquivos # cria um diretorio
echo "teste1" > /home/usuario/teste1/arquivos/teste1.txt
mkdir -p /home/usuario/teste2 # cria um diretorio
ln -sv /home/usuario/teste1/arquivos /home/usuario/teste2/arquivos # certo
ls -lart /home/usuario/teste2
ls -lart /home/usuario/teste2/arquivos
cat /home/usuario/teste2/arquivos/teste1.txt
</pre>
 
=== Removendo o link ===
Para remover o link, usa-se o comando ''rm''; como este comando também é usado para apagar arquivos, é bom tomar muito cuidado antes de remover o link para não remover coisas erradas:
 
: ''rm [nome do link]''
 
=== Observações: ===
 
* Se for usado o comando <code>rm</code> com um link, somente o link será removido.