lỗi bash shell: không có tập tin hoặc thư mục như vậy


17

Tôi đang cố gắng cài đặt trình bao bọc Virtualenv trên Ubuntu 14.04. Nhưng bất cứ khi nào tôi bắt đầu một thiết bị đầu cuối, tôi nhận được lỗi nói bash:

/usr/share/virtualenvwrapper/virtualenvwrapper_lazy.sh: Không có tệp hoặc thư mục như vậy.

Tôi cũng đã kiểm tra tập lệnh bashrc bằng cách sử dụng gedit ~/.bashrc, nhưng không có dòng nào như vậy. Có ai biết tôi sai ở đâu không?


Bạn đã kiểm tra các tệp cấu hình khác .bash_profile, và các phiên bản toàn hệ thống /etc/chưa?

Có, tôi đã kiểm tra .bash_profile, nhưng nó trống và tôi không biết cách kiểm tra / etc /.
Abhishek Singh

Nên có các tập tin toàn cầu không bị ẩn như /etc/bash.bashrc.

Có một cái nhìn về nguồn này chrisstrelioff.ws/sandbox/2014/09/04/ Khăn có thể giúp bạn một số ý tưởng.
vembutech

@vembutech Tôi đã kiểm tra liên kết trên, nhưng nó không giúp được. Tôi đã thêm đường dẫn của virtualenvwrapper.sh trong bashrc của tôi. Nhưng tôi đã không tìm thấy bất kỳ con đường như tôi mô tả ở trên trong câu hỏi của tôi. Bất cứ khi nào tôi thử nguồn ~ / .bashrc, nó sẽ báo lỗi ở trên
Abhishek Singh

Câu trả lời:


20

Tôi chỉ gặp vấn đề tương tự trên Linux Mint.

Tệp sau đây đã gây ra sự cố: /etc/bash_completion.d/virtualenvwrapper

Tôi đã tạo một bản sao lưu (chỉ trong trường hợp) và xóa nó, và mọi thứ dường như đang hoạt động tốt.


1
Làm việc cho tôi (+1).
FractalSpace

Làm việc cho tôi trên Ubuntu (+1)
lightong

16

Trong trường hợp của tôi, trước đây tôi đã cài đặt virtualenvwrapper bằng cách sử dụng apt-get install virtualenvwrappervà sau đó gỡ cài đặt nó bằng cách sử dụng apt-get remove virtualenvwrappertệp "cấu hình" /etc/bash_completion.d/virtualenvwrapperphía sau. Định nghĩa hoàn thành bash này có nguồn gốc từ bash (nó không liên quan gì đến .bashrc của tôi) và gây ra thông báo lỗi.

Giải pháp là chạy:

sudo apt-get purge virtualenvwrapper

Mà thanh trừng tất cả các tập tin liên quan đến virtualenvwrapper. Lý do tôi gỡ cài đặt nó là để sử dụng phiên bản của pip thay vào đó (cập nhật hơn), có thể được cài đặt trên toàn cầu bằng cách sử dụng:

sudo pip install virtualenvwrapper

Tôi gặp vấn đề này trong văn bản siêu phàm 3 trên OSX khi xây dựng tập lệnh và để giải quyết tôi chỉ cần cài đặt nó qua pip như lệnh của bạn nêu ở trên. Cảm ơn
James Campbell

Làm việc cho tôi trên Ubuntu 16.04
Juha Untinen 16/07/18

5

Thực hiện theo các hướng dẫn này , tôi thấy rằng lỗi xảy ra khi tìm nguồn cung cấp tập lệnh bash virtualenvwrapper, tức là:

source /usr/local/bin/virtualenvwrapper.sh

Kịch bản tham chiếu tệp /etc/bash_completion.d/virtualenvwrappernhư được chỉ ra bởi Arcticfeather.

Mở tập lệnh bằng lệnh sau:

sudo nano /etc/bash_completion.d/virtualenvwrapper

Đây là nơi tập tin không tồn tại đang được tham chiếu. Đơn giản chỉ cần thay thế /usr/share/virtualenvwrapper/virtualenvwrapper_lazy.shbằng /usr/local/bin/virtualenvwrapper_lazy.shvà bạn nên đi tốt!


1
Không làm việc cho tôi.
FractalSpace

1

Nếu không có câu trả lời nào hoạt động như bản thân tôi, chỉ cần tạo một tệp trống tại vị trí đưa ra lỗi và shebang cho nó.

Trong trường hợp của OP:

sudo nano /usr/share/virtualenvwrapper/virtualenvwrapper_lazy.sh

và viết:

#!/bin/bash

Lưu nó và cố gắng mở thiết bị đầu cuối một lần nữa, đã lừa tôi


1

Bạn có thể cài đặt Tiện ích mở rộng cho virtualenv để quản lý nhiều môi trường Python ảo ( virtualenvwrapper ) trong Ubuntu 14.04 từ Trung tâm phần mềm Ubuntu hoặc từ thiết bị đầu cuối bằng lệnh sau:

sudo apt install virtualenvwrapper
gedit .bashrc

Thêm dòng sau vào cuối .bashrc.

source /usr/share/virtualenvwrapper/virtualenvwrapper.sh

Lưu các thay đổi vào .bashrc và đóng gedit. Nguồn .bashrc của bạn để các thay đổi có hiệu lực.

cd 
source .bashrc

Không làm việc cho tôi.
FractalSpace

0

Tôi hy vọng nó sẽ giúp được ai đó, trong trường hợp của tôi, tôi đã cố gắng tạo virtualenv ở bên trong màn hình ( màn hình -S Dù thế nào ), giải pháp là đóng màn hình và thực hiện lại lệnh virtualenv ở bên ngoài.

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.