Как удалить Python 2.7 на Mac OS X 10.6.4?
Я хочу полностью удалить Python 2.7 из моей Mac OS X 10.6.4. Мне удалось удалить запись из PATH
переменная, вернув мой .bash_profile
, Но я также хочу удалить все каталоги, файлы, символические ссылки и записи, которые были установлены установочным пакетом Python 2.7. Я получил установочный пакет с http://www.python.org/. Какие каталоги / файлы / записи файла конфигурации мне нужно удалить? Есть ли где-нибудь список?
18 ответов
Не пытайтесь удалить любую поставляемую Apple систему Python, которая находится в /System/Library
а также /usr/bin
, так как это может сломать всю вашу операционную систему.
ПРИМЕЧАНИЕ. Перечисленные ниже действия не влияют на поставляемую Apple систему Python 2.7; они удаляют только сторонние Python-фреймворки, подобные тем, которые установлены установщиками python.org.
Полный список документирован здесь. По сути, все, что вам нужно сделать, это следующее:
Удалите сторонний Python 2.7 фреймворк
sudo rm -rf /Library/Frameworks/Python.framework/Versions/2.7
Удалите каталог приложений Python 2.7
sudo rm -rf "/Applications/Python 2.7"
Удалить символические ссылки, в
/usr/local/bin
, что указывает на эту версию Python. Увидеть их с помощьюls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7'
а затем выполните следующую команду, чтобы удалить все ссылки:
cd /usr/local/bin/ ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' | awk '{print $9}' | tr -d @ | xargs rm
При необходимости отредактируйте файл (ы) вашего профиля оболочки, чтобы удалить добавление
/Library/Frameworks/Python.framework/Versions/2.7
на вашPATH
файл среды. В зависимости от используемой оболочки, любой из следующих файлов может быть изменен:~/.bash_login
,~/.bash_profile
,~/.cshrc
,~/.profile
,~/.tcshrc
и / или~/.zprofile
,
Этот работает:
cd /usr/local/bin/
ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' | awk '{print $9}' | tr -d @ | xargs rm
Описание: перечисляет все ссылки, удаляет @
персонаж, а затем удаляет их.
Создайте символическую ссылку на последнюю версию
ln -s -f /usr/local/bin/python3.8 /usr/local/bin/python
Закройте и откройте новый терминал
и попытаться
python --version
Если вы установили его с помощью установщика PKG, вы можете сделать:
pkgutil --pkgs
или лучше:
pkgutil --pkgs | grep org.python.Python
который выведет что-то вроде:
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
Теперь вы можете выбрать, какие пакеты вы хотите удалить (удалить).
Это unlink документация:
--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.
В моем примере вы напечатаете
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
или в одну строку:
pkgutil --pkgs | grep org.python.Python | xargs -L1 pkgutil -f --unlink
Важно: --unlink больше не доступен, начиная с Lion (по состоянию на Q1`2014, который будет включать Lion, Mountain Lion и Mavericks). Если кто-то, кто приходит к этим инструкциям, попытается использовать его со львом, следует вместо этого попытаться адаптировать его к тому, что говорится в этом посте: https://wincent.com/wiki/Uninstalling_packages_(.pkg_files)_on_Mac_OS_X
Удаление с помощью brew uninstall python
не удалит изначально установленный python, а версон, установленный с brew.
Не нужно удалять его или сходить с ума от символических ссылок, просто используйте alias
. Я столкнулся с той же проблемой при обновлении до Python 3.7.1.
Просто установите новую версию Python, используяbrew install python
тогда в вашем .bash_profile
создать псевдоним, указывающий на новую версию python; как это:alias python="/usr/local/bin/python3"
затем сохраните и запустите source ~/.bash_profile
.
Выполнено.
Что касается удаления символических ссылок, я нашел это полезным.
find /usr/local/bin -lname '../../../Library/Frameworks/Python.framework/Versions/2.7/*' -delete
Я столкнулся с той же проблемой при обновлении до python 3.9 с python 2.7.16. Просто установите новую версию python с помощью brew install python или загрузите и установите для своей ОС, а затем
-
sudo rm -rf /Library/Frameworks/Python.framework/Versions/2.7
-
sudo rm -rf "/Applications/Python 2.7"
-
ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7'
затем проверьте ->
в твоей
.bash_profile
создать псевдоним, указывающий на новую версию Python; как это:alias python="/usr/local/bin/python3"
затем сохраните и запустите исходный код
~/.bash_profile
.проверить ->
python --version
все готово
На MacOS, где
python3
был установлен с
brew
:
sudo ln -s -f /opt/homebrew/bin/python3 /usr/local/bin/python
sudo ln -s -f /opt/homebrew/bin/pip3 /usr/local/bin/pip
Открыть терминал
python --version
pip --version
Нет необходимости удалять старые версии Python.
Просто установите новую версию, скажем, python-3.3.2-macosx10.6.dmg и измените программную ссылку python на недавно установленную python3.3
Проверьте путь по умолчанию Python и Python3.3 с помощью следующих команд
"какой питон" и "какой питон3.3"
затем удалите существующую мягкую ссылку на python и укажите ее на python3.3
Onur Güzel предлагает решение в своем блоге "Удаление пакета Python из OS X.
Вы должны ввести следующие команды в терминал:
sudo rm -rf /Library/Frameworks/Python.framework
cd /usr/local/bin
ls -l . | grep '../Library/Frameworks/Python.framework' | awk '{print $9}' | xargs sudo rm
sudo rm -rf "/Applications/Python x.y"
где команда xy - версия установленного Python. По твоему вопросу должно быть 2.7.
По словам Онура:
ВНИМАНИЕ: Эта команда удалит все версии Python, установленные с пакетами. Python, предоставленный системой, не будет затронут.
Если у вас установлено более 1 версии Python с python.org, то снова введите четвертую команду, изменив "xy" для каждой версии Python, которую необходимо удалить.
Это то, что у меня сработало на Mac OS
Загрузите последнюю версию Python 3.x с https://www.python.org/downloads/mac-osx/
Установите Python 3.x, выполнив шаги по установке, которые появляются, когда вы нажимаете на установщик.
ln -s -f /usr/local/bin/python3.9 /usr/local/bin/python
ln -s -f /usr/local/bin/pip3 /usr/local/bin/pip
Откройте новое окно терминала и проверьте
python --version
. Должен сказать 3.x
Для шага 3 подтвердите путь к существующему исполняемому файлу python, проверив вывод
which python
Примечание. Если вы установили Python с помощью Homebrew, вы можете выполнить следующие шаги, в противном случае ищите другое решение!
Чтобы удалить Python 2.7.10, который вы установили с помощью Homebrew, вы можете просто выполнить следующую команду:
brew uninstall python
Точно так же, если вы хотите удалить Python 3 (который вы установили с помощью Homebrew):
brew uninstall --force python3
Если вы думаете о том, чтобы вручную удалить Python 2.7, установленный Apple по умолчанию, я бы посоветовал вам подождать и отметить: похоже, Apple очень скоро сделает это за вас:
Python 2.7 устарел в OSX 10.15 Catalina
Python 2.7, а также Ruby и Perl устарели в Catalina: (перейдите к разделу "Среда выполнениясценариев" > "Устаревшие")
https://developer.apple.com/documentation/macos_release_notes/macos_catalina_10_15_release_notes
Apple, чтобы удалить Python 2.7 в OSX 10.16
Действительно, если вы вообще ничего не сделаете, согласно Mac Observer, в OSX версии 10.16 Python 2.7 исчезнет из вашей системы:
https://www.macobserver.com/analysis/macos-catalina-deprecates-unix-scripting-languages/
Учитывая это разоблачение, я бы посоветовал лучше всего ничего не делать и ждать, пока Apple сотрет это за вас. Поскольку Apple неизбежно собирается удалить его за вас, похоже, не стоит рисковать возиться со своей средой Python.
ПРИМЕЧАНИЕ. Я вижу, что вопрос относится конкретно к OSX v 10.6.4, но, похоже, этот вопрос стал поворотной точкой для всех людей, работающих с OSX, заинтересованных в удалении Python 2.7 из своих систем, независимо от версии, которую они используют.
Осторожно при попытке удалить определенную библиотеку python, Mac OS нужен python! НЕ удаляйте версии Python из следующих папок:
/usr/bin
system/Library
Эти версии Python 2.7 установлены Apple и используются Mac OS и другим программным обеспечением. Удаление Python из этих каталогов может сломать вашу систему.
Здесь вы увидите все предустановленные версии python, включая 2.3, 2.4 и даже 2.7.
/System/Library/Frameworks/Python.framework/Versions
Но даже с sudo я так не думаю, вы сможете их удалить. Вы получите ошибку -
Operation not permitted
Все приведенные выше ответы верны, но для меня это то, что сработало:
sudo -i
which python
ls -ltra /usr/local/bin/python
rm -rf /usr/local/Cellar/python\@2/
Примечание: это удалит локальную / пользовательскую версию Python, а не системный Python. Вы не можете действительно удалить системный питон легко из-за этого
Если вы просто хотите установить более новую версию python, используйте brew, а затем выполните brew install python. В настоящее время после установки вам нужно будет набрать python3.
Установите новую версию Python, используя brew install python. В .bash_profile или .zprofile создайте псевдоним, подобный этому: alias python="/usr/local/bin/python3" Готово.