Kích hoạt virtualenv bằng bí danh


2

Tôi có thể kích hoạt môi trường ảo python của mình từ thư mục của nó bằng cách nhập . bin/activate. Thay vào đó tôi muốn nhập một bí danh từ, chẳng hạn như shazam, từ thư mục chính (hoặc bất cứ nơi nào khác) kích hoạt môi trường, thay đổi thư mục dự án chính của tôi và liệt kê các dự án của tôi.

Tôi đã thử tạo một bí danh trong .bashrc trỏ đến tệp .sh có chứa:

cd ~/path-to-virtual-environment
. bin/activate
cd ~/path-to-master-project-folder
ls -a

Tôi đã nhận được một quyền từ chối lỗi, vì vậy tôi đã chạy chmod u+x <script file>. Kịch bản bây giờ chạy, nhưng VE không kích hoạt và trong khi các thư mục dự án được liệt kê, shell không nằm trong thư mục dự án chính. Tôi sẽ đánh giá cao một số hướng dẫn. Cảm ơn.

LƯU Ý: Tôi đã nhận được một CÂU TRẢ LỜI trên một diễn đàn khác. Các kịch bản Shell không thay đổi môi trường mà chúng được gọi; thay vào đó, sử dụng hàm shell bên trong .bashrc.

shazam () {
  source ~/path-to-virtual-environment/bin/activate
  cd ~/path-to-master-project-folder
  ls -a
}

Câu trả lời:


0

Bí danh có thể có danh sách các lệnh:

alias shazm='source ~/path-to-virtual-environment/bin/activate; cd ~/path-to-master-project-folder; ls -a'

0

Đây là một tính năng cốt lõi của gói virtualenvwrapper , cùng với một bộ tính năng bổ sung mạnh mẽ.

Để tạo một virtualenv có tên shazam sử dụng virtualenvwrapper, chỉ cần:

mkvirtualenv shazam

Để kích hoạt nó:

workon shazam

Để tắt nó, giống như bất kỳ virtualenv hoạt động nào:

deactivate

Nhiều trường hợp sử dụng và cấu hình người dùng có thể sử dụng virtualenvwrapper. Chẳng hạn, tôi thích giữ tất cả các virtualenv của mình trong một thư mục, ~/.envs. Điều này được hỗ trợ như một cấu hình. Đó là một dự án nguồn mở và được duy trì tích cực, tôi không thể đề xuất nó đủ mạnh.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.