Scroll to navigation

LN(1) General Commands Manual LN(1)

NOME

ln - cria uma ligação simbólica entre arqvuios

SINOPSE

ln [opções] origem [destino]
ln [opções] origem... diretório

Opções POSIX: [-f]

Opções GNU (forma reduzida): [-bdfinsvF] [-S backup-suffix] [-V {numbered,existing,simple}] [--help] [--version] [--]

DESCRIÇÃO

Existem dois conceitos de 'ligação'no Unix, usualmente nomeadas de ligação forte e ligação fraca. Uma ligação forte é exatamente um nome para o arquivo. (E um arquivo pode ter vários nomes. Aquilo só é apaguado do disco somente quando o último nome é removido. O número de nomes é dado por ls(1). Não havia coisa semelhante no nome 'original': todos os nome tem o mesmo status. Usualmente, mas não necessariamente, todos os nomes do arquivo encontrado no sistema de arquivos contém os mesmo dados.)

Uma ligação fraca (ou ligação simbólica, ou symlink) é um material totalmente diferente: é um pequeno arquivo especial que contém o nome de caminho. Assim, a ligação fraca pode apontar arquivos em diferentes sistemas de arquivos (talvez NFS montadas de diferentes máquinas), e não precisa de ponto para o arquivo existente atualmente. Quando acessado (com a chamada de sistema open(2) ou stat(2) , uma referência para o symlink é substituída pelo núcleo do sistema operacional com uma referência para o arquivo nomeado no nome de caminho. (De qualquer forma, com rm(1) ou unlink(2) a ligação é removida, não o arquivo que ela aponta. Estas são chamadas especiais de sistema lstat(2) e readlink(2) que lêem o status do symlink e para onde aponta o nome do arquivo. Para várias outras chamadas de sistema há um pouco de incerteza e variação entre sistemas operacionais fazem com que as operações atuem no próprio symlink, ou no arquivo apontado.

ln cria ligações entre arquivos. Por padrão, ele cria ligações fortes; com a opção -s , ele cria ligações simbólicas (ou 'fracas').

Se somente um arquivo é fornecido, a ligação daquele arquivo é feita dentro do diretório atual, o qual é, criado um link para aquele arquivo no diretório atual, com o nome igual para (o último componente sobre) o nome daquele arquivo. (Isto é uma extensão GNU.) De outra forma, se o último argumento é o nome de um diretório existente, ln deverá criar uma ligação para cada arquivo de origem mencionada naquele diretório, como o nome iqual ao (o último componente de) nome daquele arquivo de origem . (Veja a descrição da opção --no-dereference abaixo.) De outra forma, se somente dois arquivos são fornecidos, ele cria uma ligação nomeada destino para o arquivo de origem. Será um erro se o último argumento não for um diretório e mais que dois arquivos forem fornecidos.

Por padrão, ln não remove arquivos ou ligações simbólicas existentes. (Assim, é possível o seu uso para propósitos de fechamento: que só terá sucesso se destino já não exista.) Mas pode ser forçado a fazer assim com a opção -f.

Em implementações existentes, é possível criar ligações fortes para um diretório, isto pode ser feito somente pelo super-usuário. POSIX proíbe a chamada de sistema link(2) e o utilitário ln de criar ligações fortes para diretórios (mas não proíbe de criar ligações forte entre sistemas de arquivos diferentes).

OPCÕES POSIX

Remove o arquivo de destino existente.

OPÇÕES GNU

Permite que o super usuário crie ligações fortes para diretórios.
Remove o arquivo de destino existente.
Questiona se remove o arquivo de destino existente.
Quando é fornecido uma destinação explicita daquele symlink para um diretório, trata o destino como se fosse um arquivo normal.

Quando o destino é no diretório atual (e não um symlink para ele), não há ambigüidade. A ligação é criada naquele diretório. Mas quando o destino especificado é um synlink para um diretório, há dois modos para tratar o pedido do usuário. ln pode tratar o destino como um diretório normal e criar uma ligação para ele. Na outra interpretação, o destino pode ser visualizado não como diretório - e sim como uma symlink para ele. Neste caso, ln dever apaguar ou criar um backup daquele symlink antes de criar o novo link. O padrão é para se tratar o destino como um symlink para o diretório como se fosse um diretório.

Cria ligações fracas ao invês de ligações fortes. Esta opção meramente produz uma mensagem de erro nos sistemas que não suportam ligações fracas.
Descreve toda ação ocorrida para cada ligação.

OPÇÕES BACKUP GNU

As versões GNU de programas como cp, mv, ln, install e patch podem criar backup de sobre os arquivos que foram reescritos, alterados ou destruídos se isto é desejado. Aqueles arquivos de bakcup se desejados são indicado pela opção -b. Como eles deveriam ser nomeados é especificado pela opção de -V. No caso do nome do arquivo posterior é determinado para o nome de um arquivo estendido por um sufixo, este sufixo é especificado pela opção de -S.

Cria backups dos arquivos reescritos ou removidos
Anexo SUFFIX para cada backup feito. Se esta opção não é especificada, o valor da variável de ambiente SIMPLE_BACKUP_SUFFIX é usada. E se SIMPLE_BACKUP_SUFFIX não é selecionada, o padrão é `~'.
Especifica como os arquivos de cópias de segurança serão nomedos. O argumento do METHOD pode ser 'numbered' (ou 't'), 'existing' (ou 'nil'), ou 'never' (ou Se esta opção não é especificada o valor da variável de ambiente VERSION_CONTROL é usada. E se VERSION_CONTROL não é selecionada, o tipo a cópia de segurança padrão é 'existing'.

Esta opção corresponde a variável do Emacs 'version-control'. Os MÉTODOS validos são (são aceitas abreviações únicas):

Sempre cria backups numerados.
Cria backups numerados dos arquivos que já os tem , simples auxilio dos outros.
Sempre cria backups simples.

OPÇÕES PADRÃO GNU

Imprime a mensagem de uso na saída padrão e sai.
Imprime a versão na saída padrão e sai.
--
Encerra a lista de opção.

AMBIENTE

As variáveis LANG, LC_ALL, LC_CTYPE and LC_MESSAGES tem seu significado usual.

OBEDECENDO

POSIX 1003.2. De qualquer forma, POSIX 1003.2 (1996) não cita as ligações fracas. Ligaçõe fracas foram introduzidas pelo BSD, e não ocorrem nas especificações do System V release 3 (e anteriores).

VEJA TAMBÉM

ls(1), rm(1), link(2), lstat(2), open(2), readlink(2), stat(2), unlink(2)

NOTAS

Esta página descreve como ln é encontrada no pacote Utilitários de Arquivos 4.0; outras versões podem ser um pouco diferente. Envie correções e adições para aeb@cwi.nl. Relatório de problemas no programa para fileutils-bugs@gnu.ai.mit.edu.

TRADUZIDO POR LDP-BR em 21/08/2000.

André L. Fassone Canova <lonelywolf@blv.com.br> (tradução) Ricardo C.O. Freitas <english.quest@best-service.com> (revisão)

11/1998 Utilitários de Arquivos GNU 4.0