SymLink só funciona no mesmo diretório

SymLink só funciona no mesmo diretório
user@laptop ~ $ sudo ln -s ~/Games/JA/openjk.i386 ~/Desktop/JA
user@laptop ~ $ readlink -f ~/Desktop/JA
/home/user/Games/JA/openjk.i386

Como você pode ver, o link simbólico aponta para o arquivo, mas quando tento clicar nele não funciona. No entanto, se eu colocar o link simbólico do JA no mesmo diretório do arquivo ao qual ele está vinculado (neste caso ~/Games/JA), ele funcionará. Como faço para funcionar fora desse diretório (no Desktop, por exemplo)?

Responder1

O problema certamente é que o binário openjk.i386certamente espera alguns arquivos em seu diretório. Mas o binário assume que seu diretório é ~/Desktop/, onde os arquivos necessários não foram encontrados.

Eu recomendaria usar um script muito pequeno em vez de um link simbólico. Por exemplo, deve ficar assim:

#!/bin/sh
cd /pathToBinary/
./binary $@

Nomeie o arquivo JA e torne-o executável com chmod a+x JA.

Explicação:A $@garantia é que se o seu script for iniciado com algum argumento, ele será encaminhado para o binário real.

informação relacionada