O que isso faz?
ln -nsf
Eu sei que ln -s
cria um link simbólico, não um link físico, o que significa que você pode excluí-lo e não excluirá o que está vinculado. Mas o que as outras coisas significam? (-nf)
Atualização: ok ... então eu lembrei que você pode encontrar essas coisas na linha de comando. Aqui está o que eu descobri ao digitar ln --help
:
-f, --force remove existing destination files
-n, --no-dereference treat destination that is a symlink to a
directory as if it were a normal file
Mas isso ainda não está muito claro para mim quais são as implicações disso. Por que eu gostaria de criar um link macio / sym como este?
linux
command-line
Andrew
fonte
fonte
-s
você pode excluir o link sem excluir o arquivo original. Os links físicos aumentam a contagem de links do arquivo, para que ele não seja excluído quando você excluir apenas um dos links.Respostas:
Na página de manual do BSD:
fonte
a
-n
opção (junto com-f
) forçaln
a atualização de um link simbólico para um diretório. o que isso significa?suponha que você tenha 2 diretórios
e um link simbólico existente
agora você deseja atualizar o baz para apontar para foo . se você apenas fizer
você receberia
se você adicionar
-n
Você consegue o que quer.
é isso que significa 'sem desreferência': não resolva um link existente e coloque o novo link dentro desse diretório, mas apenas atualize-o.
fonte
Aqui estão todas as opções para ln. Você encontrará -n e -f aqui.
fonte
Você pode digitar "man ln" para encontrar essas coisas:
fonte
-f, --force remove arquivos de destino existentes
-n, --no-dereference trata o destino que é um link simbólico para um diretório como se fosse um arquivo normal
fonte
-f diz que se o destino do seu comando for um arquivo existente, ele deverá ser removido e substituído pelo novo link. (Observe que em sistemas influenciados pelo Unix, "arquivo" pode incluir diretórios, links, pipes, etc.)
-n modifica -f, dizendo que se o destino especificado for um link simbólico existente, ele não deverá ser removido.
fonte
-n
está errada.-f
por si só, não substituirá um link simbólico para um diretório. Ao substituir um link simbólico para um diretório,-n
é necessário tratar o link simbólico existente como um arquivo normal em vez de um diretório.