Não é possível referenciar softlinks em um script

0

temos alguns softlinks para scripts em um diretório em nosso diretório atual. Vamos dar, nós temos dois softlinks, script1 e script2. Estamos referenciando script2 de dentro de um script1 como abaixo.

. script2

Estava funcionando bem até que mudamos nossa infraestrutura. Agora, se acionarmos o script1 do softlink, ele não conseguirá encontrar o script2 do softlink nele e lançará um erro. Embora funcione se mudarmos a referência do link de software no script1 como abaixo.

. ./script2

Qualquer razão óbvia para isso.

    
por Ahmad 17.03.2014 / 19:11

1 resposta

1

Como a% man_de% manpage explica, bash (que source é uma abreviação de), pesquisa o arquivo em . se ele não contiver $PATH , portanto

. script1

está errado e seu problema não tem nada a ver com links simbólicos, mas é mais um problema de versões de / (esse comportamento mudou em algum momento, IIRC). Pelo menos bash e zsh (que é um shell POSIX bastante compatível) fazem o mesmo.

    
por 17.03.2014 / 19:34