Questão Como posso criar hard links no OSX?


O que eu quero é ter várias cópias do mesmo arquivo, e sempre que eu edito um deles, todos eles são atualizados. eu pensei Links Difíceis resolveria o meu problema. Então, eu usei o comando ln Como descrito na Wikipedia. No entanto, quando eu mudei o arquivo original, o link não mudou.

Eu entendi mal o que os hard links devem fazer?

  • Se sim:
    • Então qual é a diferença entre ln e cp?
    • Como posso fazer o que quero?
  • Se não:
    • Por que isso não funcionou?
    • Como posso fazê-lo funcionar?

2


origem


Eu acho que o problema é que o editor apaga o arquivo e cria um novo com o mesmo nome. Eu li que Aqui. - Donald Duck


Respostas:


Talvez o editor esteja fazendo algumas coisas estranhas, como copiar o arquivo para algum local temporário, ou o que for.

Minha sugestão seria, ao contrário: Edite o arquivo usando sempre o mesmo caminho e use links simbólicos (ln -s) em toda parte.

E os sistemas de controle de versão também podem ser relevantes.


0



Se eu usar links simbólicos em um repo (que aponta para um arquivo fora do repo) e, em seguida, empurrar o repositório para o github, os outros que clonarem o repositório poderão usar o arquivo? É por isso que eu queria usar links físicos. - Lea Verou
Eu acredito que sim, mas o mais fácil é tentar. E você poderia ter o symlink feito pelo processo de construção (por exemplo, com uma regra Makefile).
Infelizmente, você não pode nem mesmo linkar para arquivos .js que são symlinks :( - Lea Verou
Não tenho certeza de entender o que você quer dizer. Talvez você precise configurar o servidor da Web que atende esses arquivos .js para seguir os links simbólicos.


Após o "tutorial" encontrado no http://en.wikipedia.org/wiki/Ln_%28Unix%29#Hard_link, Eu fiz exatamente os mesmos comandos no Mac Os X e definitivamente não funciona como deveria ser.

Eu pensei no início que Mac Os X tinha um comportamento diferente, então eu tentei no Ubuntu, mas eu tenho exatamente o mesmo resultado :(

Então a resposta que posso dar é "você entendeu bem de acordo com a explicação da wikipedia". Ou talvez ambos estamos confusos?

Desculpe eu não pude te ajudar mais :(


0



Acho que eu entendi, graças a Basile: O editor salva o arquivo em um lugar diferente no disco toda vez. Se for apenas esse arquivo apontando para esse espaço no disco, o primeiro lugar será excluído. No entanto, como há um segundo link apontando para ele, o sistema operacional o deixa lá. Portanto, o primeiro link aponta para o primeiro arquivo ainda, mas o segundo arquivo agora ocupa outro lugar no disco. - Lea Verou