- 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
PATHcomo seu shell interativo. Digiteecho $PATHpara ver sua variável de caminho atual e defina essa variávelPATHno 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 bashe comece a ler na seçãoINVOCATION, próximo ao topo do arquivo.