Como você faz um único arquivo 'aparecer' em várias pastas ao mesmo tempo?
Se você tiver um alto número de pastas configuradas para o seu trabalho e precisar usar o mesmo arquivo de script em todas elas durante o dia de trabalho, qual é a maneira mais fácil de realizar isso além de copiar e colar? O post de perguntas e respostas do SuperUser de hoje tem algumas respostas e conselhos úteis para um leitor frustrado.
A sessão de perguntas e respostas de hoje nos é oferecida por cortesia do SuperUser - uma subdivisão do Stack Exchange, um agrupamento de sites de perguntas e respostas conduzido pela comunidade..
Screenshot cortesia de csaveanu (Flickr).
A questão
Leitor de superusuário Elliot está procurando a melhor maneira de ter o mesmo arquivo em várias pastas ao mesmo tempo:
Eu tenho mais de 50 pastas, cada uma delas contém uma grande quantidade de dados que precisam ser processados. Todos eles são processados usando o mesmo código exato, utilizando os.path.dirname (os.path.realpath (file)) para obter o diretório no qual o script python está localizado, para que não haja edição manual necessária pelo usuário, basta clicar duas vezes.
Eu preciso que o script apareça como se estivesse em cada pasta enquanto, na verdade, estivesse em apenas um lugar, para que eu possa editá-lo uma vez, e quando for executado em qualquer um desses locais, o caminho da pasta estará correto. A alternativa é editar o mestre e depois colá-lo uma pasta por vez através de todas as pastas de 50+ cada vez que eu atualizar o código, o que é muito entediante e propenso a erros. No Linux, eu poderia configurar isso com um link simbólico, mas não consigo descobrir uma maneira de fazer isso com o Windows.
Como alternativa, uma maneira de colar o arquivo em todos os diretórios de destino de uma vez, em vez de um de cada vez, atingiria o mesmo objetivo.
Existe uma maneira de fazer isso em vez de copiar e colar o arquivo de script uma pasta de cada vez?
A resposta
O colaborador do SuperUser gronostaj tem a resposta para nós:
Você precisa de um Link Simbólico ou um Link Difícil.
Links Simbólicos (ou Links simbólicos para breve) são bastante semelhantes aos atalhos: há um arquivo real e várias referências (Links simbólicos) para isso. Eles até têm aquela pequena flecha nos ícones. Ao contrário de atalhos, Links simbólicos pode ter qualquer extensão.
Links Difíceis vincular um arquivo em um disco rígido a um local na árvore de diretórios. Cada arquivo tem pelo menos um Link Difícil, caso contrário, não existiria em nenhum diretório. Se um arquivo tiver vários Links Difíceis, o original não pode ser distinguido dos outros e o arquivo existe fisicamente em apenas um local.
Ambos têm suas limitações:
- Alguns softwares não funcionam bem com Links simbólicos.
- A exclusão do arquivo original deixa todos os seus Links simbólicos quebrado.
- Você não pode Link Difícil pastas (mas você pode criar uma junção de diretório se Symlink não é o suficiente).
- Criando partição cruzada Links Difíceis é impossível.
Links simbólicos geralmente são suficientes.
Para criar um link simbólico ou link físico:
1. Iniciar uma linha de comando privilegiada: pressione o Chave do Windows, tipo cmd, então aperte Ctrl + Shift + Enter.
2. Emita o comando mklink:
- mklink link_name link_target para um arquivo Symlink
- mklink / d link_name link_target para uma pasta Symlink
- mklink / h link_name link_target para um arquivo Link Difícil
- mklink / j link_name link_target para um Junção de diretório
Tem algo a acrescentar à explicação? Som desligado nos comentários. Quer ler mais respostas de outros usuários do Stack Exchange com experiência em tecnologia? Confira o tópico de discussão completo aqui.