- Seu script de teste não possui uma linha shebang . Não há sopa para você.
- O subshell que está sendo chamado pelo seu script não está usando a mesma variável
PATH
como seu shell interativo. Digiteecho $PATH
para ver sua variável de caminho atual e defina essa variávelPATH
no script.
Por que a variável PATH
não é consistente entre os dois:
- Porque você não está especificando a linha shebang, você não tem nenhuma garantia de que o shell sendo invocado é o mesmo que o seu shell interativo. Poderia ser sourcing diferentes arquivos de configuração inteiramente.
- Arquivos de configuração diferentes são obtidos dependendo de como um shell é executado. Você está dentro de um shell interativo e seu script é um shell não interativo. Supondo que você esteja tentando usar
bash
, consulteman bash
e comece a ler na seçãoINVOCATION
, próximo ao topo do arquivo.