2012-02-23 41 views
17

Tôi đang cố gắng xóa tất cả các gói được cài đặt "pyobjc-framework". Tôi đã thử những điều sau đây:Có cách nào để gỡ cài đặt nhiều gói bằng pip không?

% pip freeze | grep pyobjc-framework | xargs pip uninstall 

nhưng điều này barfs vì mỗi pip gỡ bỏ yêu cầu xác nhận (có lẽ một cách để bỏ qua điều này sẽ là một giải pháp).

Vui lòng trợ giúp trước khi tôi phải chia nhỏ và gỡ cài đặt từng cách thủ công! Không ai muốn điều đó.

Trả lời

29

lệnh của bạn thực sự nên làm việc nếu bạn thêm -y | --yes cờ để pip :-)

-y, --yes Đừng hỏi để xác nhận gỡ bỏ cài đặt xóa.

Có thể:

% pip freeze | grep pyobjc-framework | xargs pip uninstall -y

+0

Bingo. -y là lá cờ tôi cần. Tôi cũng cần xargs để vượt qua một đối số duy nhất tại một thời điểm vì vậy lệnh cuối cùng của tôi trông như thế này: '% pip freeze | grep pyobjc-framework | xargs -n 1 sudo pip uninstall -y' Cảm ơn! – wh1tney

4

Chuyển hướng đầu ra grep sang tệp mới và chạy.

pip uninstall -r <file name> 

hoạt động Tôi nghĩ vậy.

pip freeze | grep pyobjc > packages_to_remove.txt 
sudo pip uninstall -y -r packages_to_remove.txt 
+0

er, xin lỗi. 'pip đóng băng | grep pyobjc> packages_to_remove.txt; sudo pip uninstall -y -r packages_to_remove.txt' nên làm điều đó. Lưu ý, cờ -y phải đến trước khi sử dụng cờ -r và đối số tệp. Doh. – wh1tney

1

tôi luôn luôn sử dụng này:

pip freeze | xargs pip uninstall -y 
Các vấn đề liên quan