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.