Meu $ PATH fica assim:
/home/torbjorr/deployed/vector/x86_64-GNU%2fLinux:/home/torbjorr/deployed/typewriter/x86_64-GNU%2fLinux:/home/torbjorr/deployed/mustudio/x86_64-GNU%2fLinux:/home/torbjorr/deployed/mathext/x86_64-GNU%2fLinux:/home/torbjorr/deployed/doxymax/x86_64-GNU%2fLinux:/home/torbjorr/deployed/c2tex/x86_64-GNU%2fLinux:/home/torbjorr/deployed/x86_64-GNU%2fLinux/wand:/home/torbjorr/deployed/x86_64-GNU%2fLinux/spellesc:/home/torbjorr/deployed/x86_64-GNU%2fLinux/projinit:/home/torbjorr/deployed/x86_64-GNU%2fLinux/herbs:/home/torbjorr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
No bash, posso, sem problemas, chamar a varinha localizada em
/home/torbjorr/deployed/x86_64-GNU%2fLinux/wand
gostar
$ wand
(i) Mål från "main.cpp" har registrerats
(i) Skapar katalog "__wand_targets_dbg"
(i) Kör g++ "main.cpp" -fpic -L"/home/torbjorr/deployed" -g -Wall -std=c++11 -I"/home/torbjorr/deployed" -o "__wand_targets_dbg/cb-template
No entanto, no modo de compatibilidade do shell bourne, o wand não pode ser encontrado:
$ wand
sh: 2: wand: not found
Parece que o problema é o sinal de% nesses caminhos. Este sinal foi adicionado pela codificação de URL para que o nome "GNU / Linux" possa ser usado no nome do diretório, mesmo que não seja um nome de arquivo válido. É possível obter o nome trabalhando em sh ou fazer o comando sh funcionar como bash. Ou seja, faça o bash se comportar da mesma maneira, mesmo que tenha sido chamado com o comando / bin / sh, que simboliza o bash de qualquer maneira.
sh
(é ok embash
ezsh
embora). Chamar diretamente o executável funcionash
; realmente estranho.