Converta links simbólicos do Linux para links simbólicos do Windows

5

Tenho notado que os links simbólicos do Linux não funcionam no Windows e vice-versa. Existe alguma maneira de converter links simbólicos do Linux para links simbólicos do Windows? Especificamente, eu quero converter relativo symlinks Linux para relativo symlinks do Windows (no caso da pasta com os links simbólicos ser armazenada em uma unidade flash, ou copiada de um sistema de arquivos do Linux para um sistema de arquivos do Windows).

    
por Anderson Green 05.01.2013 / 22:23

1 resposta

1

O Windows não tem links simbólicos por si só. Tem atalhos , que são pouco mais que arquivos de texto especiais contendo um local de destino. Eles diferem em recursos de links simbólicos. Por exemplo, este redirecionamento em um sistema POSIX (incluindo o OS X):

./somecommand > ./somesymlink

colocará a saída do comando em qualquer arquivo para o qual o link simbólico aponta, mas no Windows

somecommand > someshortcut.lnk

simplesmente sobrescreveria o atalho - você acabaria com um arquivo de texto com uma extensão confusa.

Por outro lado, os atalhos do Windows podem conter argumentos de linha de comando que alteram a natureza real do comando. Os links simbólicos não possuem esse recurso (embora com aliases, funções e scripts de shell, você realmente não percebe isso).

Dito isso, você pode criar um arquivo de atalho programaticamente no Windows , para criar um script que tentará criar o arquivo correto para sua plataforma.

    
por 06.01.2013 / 15:17