Dengan menggunakan deactivate
fitur yang disediakan oleh activate
skrip venv, Anda harus memercayai fungsi penonaktifan untuk dikodekan dengan benar untuk mengatur ulang semua variabel lingkungan secara bersih kembali seperti semula — dengan mempertimbangkan tidak hanya aktivasi asli , tetapi juga sakelar , konfigurasi , atau lainnya. pekerjaan yang mungkin telah Anda lakukan untuk sementara waktu.
Ini mungkin baik-baik saja, tetapi itu memperkenalkan risiko baru, tanpa nol meninggalkan lingkungan Anda dimodifikasi setelahnya.
Namun, secara teknis tidak mungkin bagi suatu proses untuk secara langsung mengubah variabel lingkungan dari induknya, sehingga kita dapat menggunakan sub-shell terpisah untuk benar-benar yakin bahwa kami venv
tidak meninggalkan perubahan residual di belakang:
Mengaktifkan:
$ bash --init-file PythonVenv/bin/activate
- Ini memulai shell baru di sekitar
venv
. Kulit asli Anda bash
tetap tidak dimodifikasi.
Untuk menonaktifkan:
$ exit
ATAU [CTRL]
+[D]
- Ini keluar dari seluruh shell yang
venv
ada, dan menjatuhkan Anda kembali ke shell asli dari sebelum script aktivasi membuat perubahan apa pun pada lingkungan.
Contoh:
[user@computer ~]$ echo $VIRTUAL_ENV
No virtualenv!
[user@computer ~]$ bash --init-file PythonVenv/bin/activate
(PythonVenv) [user@computer ~]$ echo $VIRTUAL_ENV
/home/user/PythonVenv
(PythonVenv) [user@computer ~]$ exit
exit
[user@computer ~]$ echo $VIRTUAL_ENV
No virtualenv!