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

-f
Remove o arquivo de destino existente.

OPÇÕES GNU

-d, -F, --directory
Permite que o super usuário crie ligações fortes para diretórios.
-f, --force
Remove o arquivo de destino existente.
-i, --interactive
Questiona se remove o arquivo de destino existente.
-n, --no-dereference
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.

-s, --symbolic
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.
-v, --verbose
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.
-b, --backup
Cria backups dos arquivos reescritos ou removidos
-S SUFFIX, --suffix=SUFFIX
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 é `~'.
-V METHOD, --version-control=METHOD
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):

t, numbered
Sempre cria backups numerados.
nil, existing
Cria backups numerados dos arquivos que já os tem , simples auxilio dos outros.
never, simple
Sempre cria backups simples.

OPÇÕES PADRÃO GNU

--help
Imprime a mensagem de uso na saída padrão e sai.
--version
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