Não é possível chamar o script de qualquer lugar, mas o seu próprio diretório

1

Eu tenho um script simples que executa um programa do Windows através do wine com um argumento (ou seja, myScript.sh = ~/some/path/someProgram.exe someArg ). Quando eu corro de seu próprio diretório, ele funciona bem:

cd ~/some/path
./myScript.sh

No entanto, se eu tentar executá-lo em outro lugar:

cd /home/me
./some/path/myScript.sh

Por causa de Como executar script em um diretório diferente? Eu pensei que isso poderia funcionar:

/home/me/some/path/myScript.sh

mas o script (ou a chamada do vinho resultante) falha se eu fizer algo diferente de executar o script do diretório. Existe alguma maneira de chamar o script de outro lugar sem quebrá-lo?

P.S. Este não é um problema de permissões: o script tem permissão executável para todos os usuários.

    
por machineghost 02.12.2017 / 20:05

1 resposta

2

Encontrei uma solução malfeita: fiz as coisas funcionarem explicitamente chamando cd dentro do meu script e, em seguida, usando wine explicitamente para executar o executável:

cd ~/some/path
wine someProgram.exe someArg

No entanto, parece que deve haver alguma maneira de fazer isso funcionar sem chamar explicitamente cd e aceitarei qualquer resposta que explique isso. Eu não aceito este, pois ele não responde verdadeiramente a minha pergunta original (porque ele faz o cd não está realmente executando coisas "de outro lugar").

    
por machineghost 02.12.2017 / 20:33