Por que este script bash não é executado como “sh runserver” e reconhece o comando “source”?
Sep 06 2020
Eu quero fazer um arquivo que irá executar 2 comandos.
Um irá ativar um ambiente virtual e depois disso, o segundo comando irá executar um servidor.
Meu arquivo é chamado de "runserver" e tem a seguinte aparência:
#!/bin/bash
echo "Activating virtual enviroment"
source odoo-venv/bin/activate
echo "Running Odoo server"
./odoo12/odoo-bin --config=/etc/odoo12.conf
Quando executo este arquivo com
sh runserver
Mostra o seguinte erro:
Activating virtual enviroment...
runserver: 3: source: not found
Running Odoo server...
...
Parece que meu arquivo bash não está reconhecendo o comando de origem, como posso corrigir isso?
Respostas
22 choroba Sep 07 2020 at 00:23
shnão executa seu script, bashmas no dashqual não oferece suporte source. Use em seu .lugar:
. odoo-venv/bin/activate
ou execute o script com bash:
/bin/bash runserver
Veja também uma pergunta semelhante em StackOverflow .
O que significa um erro “Não é possível encontrar o símbolo” ou “Não é possível resolver o símbolo”?
George Harrison ficou chateado por suas letras de 'Hurdy Gurdy Man' de Donovan não terem sido usadas