Mac OS X 10.6.4'te Python 2.7 nasıl kaldırılır?


339

Python 2.7'yi Mac OS X 10.6.4'ten tamamen kaldırmak istiyorum. PATHGirişimi değişkenimden kaldırarak kaldırmayı başardım .bash_profile. Ancak Python 2.7 yükleme paketi tarafından yüklenen tüm dizinleri, dosyaları, sembolik bağlantıları ve girdileri kaldırmak istiyorum. Yükleme paketini http://www.python.org/ adresinden aldım . Hangi dizinleri / dosyaları / yapılandırma dosyası girdilerini kaldırmam gerekir? Bir yerde bir liste var mı?

Yanıtlar:


705

İçinde Apple tarafından sağlanan herhangi bir sistem Python'u çıkarmaya çalışmayın /System/Libraryve /usr/binbu işletim sisteminizin tamamını bozabilir.


NOT: do aşağıda listelenen adımlar değil Apple tarafından sağlanan sistem Python 2.7 etkiler; python.org yükleyicileri tarafından yüklenenler gibi yalnızca üçüncü taraf bir Python çerçevesini kaldırırlar .


Tam liste burada belgelenmiştir . Temel olarak, tek yapmanız gereken aşağıdakilerdir:

  1. Üçüncü taraf Python 2.7 çerçevesini kaldırma

    sudo rm -rf /Library/Frameworks/Python.framework/Versions/2.7
  2. Python 2.7 uygulamalar dizinini kaldırma

    sudo rm -rf "/Applications/Python 2.7"
  3. /usr/local/binBu Python sürümüne işaret eden sembolik bağlantıları kaldırın . Onları kullanarak görün

    ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' 

    ve sonra tüm bağlantıları kaldırmak için aşağıdaki komutu çalıştırın:

    cd /usr/local/bin/
    ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' | awk '{print $9}' | tr -d @ | xargs rm
    
  4. Gerekirse, düzenleme için kabuk profil dosyası (ler) ekleyerek kaldırmak /Library/Frameworks/Python.framework/Versions/2.7için için PATHçevre dosyası. : Kullandığınız kabuk bağlı olarak, aşağıdaki dosyalardan herhangi değiştirilmiş olabilir ~/.bash_login, ~/.bash_profile, ~/.cshrc, ~/.profile, ~/.tcshrc, ve / veya ~/.zprofile.


157
Ned için teşekkür ederim, ben kaldırdım ve Mac OS X'i yeniden yüklemeniz zor yolunu öğrendim. Bunu buraya gelen ve yaptığım aynı şeyi düşünen herkes için bırakıyorum. / System / Library / Frameworks / ... içindeki Python'u kaldırmayın ... Uygulamalarınızın hiçbiri çalışmayacak ve OS X'i yeniden yüklemeniz gerekecek.
brthornbury

44
Python 2.7, son sistemlerde varsayılan Python sistemidir, 10.6.4'te 2.6 ve 2.7 kullanıcı tarafından kurulmuştur. SON OS X SİSTEMİNDEN 2.7 ÇIKARMAYIN.
Martijn Pieters

30
Yukarıdaki adımlar sistem Python'unu OS X'in herhangi bir sürümünden kaldırmaz . Sistem Python'ları yüklüdür /System/Library/Frameworks(asla değiştirmemeniz gerekir) /Library/Frameworks.
Ned Deily

5
brew doctorkullanılmayan simgeleri bulmak için de kullanılabilir.
Shubham Kushwah

5
Bu adımları yapma !!!!! Virtualenv ortamınız bozulacak !!!!! Aman Tanrım!!! Neden bu adımları yaptım !!!!!!!!!!
FIREUSD

75

Bu işe yarıyor:

cd /usr/local/bin/
ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' | awk '{print $9}' | tr -d @ | xargs rm

Açıklama: Tüm bağlantıları listeler, @karakteri kaldırır ve ardından kaldırır.


1
Burada verilen her cevabı denedim ve bu nihayet hile yapan cevaptı.
jtsmith1287

25

PKG yükleyicisini kullanarak yüklediyseniz şunları yapabilirsiniz:

pkgutil --pkgs

ya da daha iyisi:

pkgutil --pkgs | grep org.python.Python

hangi gibi bir çıktı verecektir:

org.python.Python.PythonApplications-2.7
org.python.Python.PythonDocumentation-2.7
org.python.Python.PythonFramework-2.7
org.python.Python.PythonProfileChanges-2.7
org.python.Python.PythonUnixTools-2.7

şimdi hangi paketlerin bağlantısını kaldıracağınızı (kaldıracağınızı) seçebilirsiniz.

Bu bağlantıyı kaldırma dokümanlarıdır:

 --unlink package-id
             Unlinks (removes) each file referenced by package-id. WARNING: This command makes no attempt to perform reference counting or dependency analy-
             sis. It can easily remove files required by your system. It may include unexpected files due to package tainting. Use the --files command first
             to double check.

Benim örneğimde

pkgutil --unlink org.python.Python.PythonApplications-2.7
pkgutil --unlink org.python.Python.PythonDocumentation-2.7
pkgutil --unlink org.python.Python.PythonFramework-2.7
pkgutil --unlink org.python.Python.PythonProfileChanges-2.7
pkgutil --unlink org.python.Python.PythonUnixTools-2.7

veya tek bir satırda:

pkgutil --pkgs | grep org.python.Python | xargs -L1 pkgutil -f --unlink

Önemli: --unlink artık Lion ile başlayarak kullanılamaz (1. Çeyrek.2014 itibarıyla Aslan, Dağ Aslanı ve Mavericks'i içerecektir). Bu talimatlara gelen herkes onu aslanla kullanmaya çalışırsa, bunun yerine bu yayının söylediklerine uyarlamaya çalışmalıdır: https://wincent.com/wiki/Uninstal_packages_(.pkg_files)_on_Mac_OS_X


4
Ne yazık ki, bağlı olarak pkgutilPython yükleyicisi tarafından yüklenen tüm dosyalar kaldırılmayacaktır, çünkü bunların bazıları kurulum sonrası uçuş sonrası komut dosyaları sırasında oluşturulur ve bu nedenle kayıtlı değildir.
Ned Deily

21

Python'u ile kaldırmaya çalışıyorum

brew uninstall python

olacak değil doğal yüklü Python kaldırmaz, ancak bu sürüm ile yüklü brew.


9

Sembolik bağların silinmesi ile ilgili olarak, bunun yararlı olduğunu gördüm.

find /usr/local/bin -lname '../../../Library/Frameworks/Python.framework/Versions/2.7/*' -delete

Bu, lskabul edilen cevapta olduğu gibi çıktıyı ayrıştırmaktan çok daha iyi bir fikirdir
spinup

8

En son sürüme simge bağlantısı oluşturma

 ln -s -f /usr/local/bin/python3.8 /usr/local/bin/python

Yeni bir terminali kapatma ve açma

ve dene

 python --version

Pip için çok teşekkürler ve aynı şekilde pip "ln -s -f / usr / local / bin / pip3 / usr / local / bin / pip" sonra pip yükseltmek istiyorsanız da bu komutu kullanın "pip install --upgrade pip"
Moh Alaraabi

6

Eski python sürümlerini kaldırmanıza gerek yok.

Sadece python-3.3.2-macosx10.6.dmg yeni sürümünü yükleyin ve python'un yumuşak bağlantısını yeni kurulan python3.3 olarak değiştirin

Varsayılan python ve python3.3'ün yollarını aşağıdaki komutlarla kontrol edin

"hangi python" ve "hangi python3.3"

daha sonra python'un mevcut yumuşak bağlantısını silin ve python3.3'e yönlendirin


10
Teşekkürler, ama bu sorumu cevaplamıyor. Soru, yeni bir sürüm yüklemek için eski bir python sürümlerini kaldırmam gerekip gerekmediği değil.
Jan Deinhard

1
Bu en güvenli yaklaşım gibi görünüyor, çünkü benim için işletim sisteminin makineye koyduğu şeyle uğraşmak genellikle çok iyi sonuç vermiyor. Ben de, bir python2 kabuğundaki python3 ifadelerinden sözdizimi sorunları ile karşılaştıktan sonra " yükleme paketini python.org'dan aldım ". İlk düşüncem python2'yi kaldırmak ve bunun yerine python3 kullanmaktı. Ancak, bu eylemin tehlikelerini doğrulayan önceki gönderilerden. Bu benim için daha iyi bir çözümdü ve "davranışı yeniden yönlendirmek için bağlantıları kullan" fikrini izliyor. Ayrıca, python3 kabuğu zaten kurulmuş, komut isteminde "python" yerine "python3" yazmanız gerekiyordu.
Mark Longmire

@ minhas23 Elektronik bağlantıyı nasıl siler ve yeni bir bağlantı oluştururum?
doberkofler

4

Onur Güzel, "Python Package'ı OS X'ten kaldırın .

Terminale aşağıdaki komutları yazmalısınız:

  1. sudo rm -rf /Library/Frameworks/Python.framework
  2. cd /usr/local/bin
  3. ls -l . | grep '../Library/Frameworks/Python.framework' | awk '{print $9}' | xargs sudo rm
  4. sudo rm -rf "/Applications/Python x.y"

    Burada xy komutu kurulu Python sürümüdür. Sorunuza göre, 2.7 olmalıdır.

Onur'un sözleriyle:

UYARI: Bu komutlar, paketlerle birlikte yüklenen tüm Python sürümlerini kaldıracaktır. Sistemden sağlanan python etkilenmeyecektir.

Python.org'dan 1'den fazla Python sürümü yüklüyse, dördüncü komutu tekrar çalıştırın ve kaldırılacak her Python sürümü için "xy" yi değiştirin.


Bu sorunumu çözdü, 2.7.10 ve demlemek 2.7.15 yüklü ve "python" çalıştırdığınızda 2.7.10 hala 2.7.15 görünmüyordu, şimdi senin yardım şimdi çalışıyor, teşekkür ederim
Radek

4

Not : Python'u Homebrew kullanarak kurduysanız, aşağıdaki adımları takip edebilirsiniz, aksi takdirde başka bir çözüm arayın!


Homebrew kullanarak yüklediğiniz Python 2.7.10'u kaldırmak için aşağıdaki komutu verebilirsiniz:

brew uninstall python

Benzer şekilde, Python 3'ü (Homebrew kullanarak yüklediğiniz) kaldırmak istiyorsanız:

brew uninstall --force python3

3

Kaldırmaya veya sembolik bağlantılar ile delirmeye gerek yok, sadece bir kullanın alias. Python 3.7.1'e yükseltme yaparken de aynı sorunla karşılaştım.
Sadece kullanarak yeni piton sürümünü yükleyin brew install pythonardından senin .bash_profileyeni piton sürümüne işaret eden bir takma ad oluşturun; bunun gibi: alias python="/usr/local/bin/python3"sonra kaydedin ve çalıştırın source ~/.bash_profile.
Bitti.


2

Apple'ın varsayılan Python 2.7'sini manuel olarak kaldırmayı düşünüyorsanız, hang-fire ve noting yapmanızı öneririm: Apple çok kısa bir süre içinde sizin için yapacak gibi görünüyor:

Python 2.7 OSX 10.15 Catalina'da Kullanımdan Kaldırıldı

Python 2.7- ve Ruby & Perl- Catalina'da kullanımdan kaldırıldı: (" Scripting Language Runtimes "> " Kullanımdan Kaldırma " bölümüne atlayın )

https://developer.apple.com/documentation/macos_release_notes/macos_catalina_10_15_release_notes

Apple OSX 10.16 Python 2.7 kaldırmak için

Gerçekten de, hiçbir şey yapmazsanız, Mac Observer'a göre , OSX sürüm 10.16'ya göre, Python 2.7 sisteminizden kaybolacaktır:

https://www.macobserver.com/analysis/macos-catalina-deprecates-unix-scripting-languages/

Bu vahiy göz önüne alındığında, en iyi eylemin hiçbir şey yapmamasını ve Apple'ın sizin için silmesini beklemenizi öneririm. Apple yakında sizin için kaldırmak üzereyken, Python ortamınızla uğraşma riskine değmez.

NOT : Sorunun özellikle OSX v 10.6.4 ile ilgili olduğunu görüyorum , ancak bu soru, hangi sürümde çalışıyorlarsa olsunlar, Python 2.7'yi sistemlerinden kaldırmakla ilgilenen tüm OSX kullanıcıları için bir pivot noktası haline geldi.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.