J'ai un script très simple run.sh
qui ressemble à ceci:
#!/bin/sh
echo "Hello, let's start!"
cd /Users/c/Dev/App/Code/
. venv/bin/activate
cd Backend
export FLASK_APP=app.py
export FLASK_DEBUG=1
export CONFIG=Local
flask run
Après l'avoir lancé, j'obtiens ce qui suit:
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.
[Process completed]
Au lieu de cela, j'aimerais obtenir la session active de la même manière que si je tapais le script manuellement, donc simplement virtualenv actif où je peux ensuite exécuter pip install
et voir la sortie de Flask.
Comment puis je faire ça?
Si vous voulez une session active après le script, ne l'exécutez pas, sourcez-le:
$ source ./run.sh
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.
$
Vous pouvez également démarrer une nouvelle session bash/sh dans votre script et y ajouter les variables d'environnement. Mais ça complique les choses ...