Criando uma cópia de um arquivo, que é atualizado automaticamente

1

Estou usando o Fedora 26. Quero que um script seja executado na inicialização, mas também tenha esse script na minha pasta de scripts. Como posso fazer com que o /etc/init.d/foo seja atualizado quando edito ~/scripts/bar ? Eu estava pensando em um link simbólico, mas eu realmente não sei como fazer isso acontecer

    
por Alex Ironside 07.09.2017 / 05:28

1 resposta

3

Os links simbólicos são bem diretos, mas você precisa entender que as alterações são bidirecionais, uma alteração no conteúdo do link simbólico afeta o arquivo original e vice-versa. Isso é porque o link simbólico é apenas um ponteiro para o arquivo original e quando você abre um link simbólico, seu aplicativo abre o original silenciosamente.

Se é isso que você quer, é só fazer (do terminal):

ln -s /PATH/TO/TARGET/FILE /PATH/TO/NEW/SYMLINK

Você não precisa de um script para atualizar o link simbólico. Você também pode criar links simbólicos relativos, tornando o caminho para o arquivo de destino um caminho relativo (como visto de onde o symlink será mantido). Assim:

cd /home/myuser/folder1/folder2
ln -s ../file-in-folder1 symlink-in-folder2

mas se você mover o seu link simbólico para outro diretório, ele quebrará sua referência ao arquivo original.

Você pode ver onde os links simbólicos estão vinculados à saída longa de ls:

ls -l /PATH/TO/SYMLINK ou ls -l /PATH/TO/DIRECTORY/WITH/SYMLINKS/IN/IT

Você também pode criar links simbólicos para os próprios diretórios. As mesmas regras se aplicam. A única diferença dos diretórios normais é que você não precisa reclassificá-los com o sinalizador -r ao removê-los com rm . Porque eles não são realmente um diretório ... eles são um arquivo que aponta para um diretório.

    
por 07.09.2017 / 05:41

Tags