ln -s -T :: o que o comutador “-T” faz exatamente?

0

Eu vi a chave -T sendo usada, por exemplo aqui . Olhando para a página de manual, ele simplesmente lê: "trate LINK_NAME como um arquivo normal". Alguém pode lançar alguma luz mostrando a diferença entre usar e não usar a chave -T ?

    
por MarcusJuniusBrutus 26.05.2013 / 12:33

1 resposta

2

Veja o capítulo “Target Directory” no manual do GNU Coreutils :

-T
--no-target-directory

Do not treat the last operand specially when it is a directory or a symbolic link to a directory. This can help avoid race conditions in programs that operate in a shared area. For example, when the command mv /tmp/source /tmp/dest succeeds, there is no guarantee that /tmp/source was renamed to /tmp/dest: it could have been renamed to /tmp/dest/source instead, if some other process created /tmp/dest as a directory. However, if mv -T /tmp/source /tmp/dest succeeds, there is no question that /tmp/source was renamed to /tmp/dest.

In the opposite situation, where you want the last operand to be treated as a directory and want a diagnostic otherwise, you can use the --target-directory (-t) option.

Note que o projeto GNU não considera man pages como uma forma primária de documentação; você deve sempre olhar a página info correspondente (a nota sobre isso é colocada no final de cada página man para um programa que é desenvolvido como parte do projeto GNU).

    
por 26.05.2013 / 12:50

Tags