Как переустановить системный python 2.7 на Linux Mint 18.3 БЕЗ переустановки ОС?

Используйте zsh вместо bash , где вы можете определить сортировку (по имени по умолчанию):

files=(/my/directory/**/*.jpg(.NDms+2ms-15))

Это также позволит избежать проблем с именами файлов, содержащими символы новой строки ( bash-4.4 файл карты поддерживает -d '' , который можно использовать с find -print0 ).

Чтобы отсортировать ( o rder) по m времени одификации:

files=(/my/directory/**/*.jpg(.NDms+2ms-15om))

Чтобы получить аналогичный (по имени) порядок с помощью GNU find и GNU sort :

find /my/directory -name '*.jpg' \
                   -type f \
                   -newermt '-15 seconds' \
                   ! -newermt '-2 seconds' \
                   -print0 |
  sort -zt/ -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 -k6,6 -k7,7 -k8,8 \
            -k9,9 -k10,10 -k11,11 -k12,12 -k13,13 -k14,14

Для изменения временного порядка:

find /my/directory -name '*.jpg' \
                   -type f \
                   -newermt '-15 seconds' \
                   ! -newermt '-2 seconds' \
                   -printf '%T@:%p\0' |
  sort -zn |
  sed -z 's/[^:]*://#'

Добавить | tr '\ 0' '\ n' для хранения в bash скалярной (не массива) переменной или для использования с readarray / mapfile без -d '' (разделить по новой строке, и в этом случае вы можете также сделать все это с записями с разделителями новой строки, а не с записями с разделителями NUL).

Или используйте readarray -d '' array <<(find ...) с bash 4.4 или выше или в zsh , используйте array = ($ {( 0) "$ (найти ...)"}) .

1
11.06.2018, 20:21
2 ответа

Si su problema es tener una versión demasiado -moderna de pip (10+ ), siempre puede volver a la versión anterior (, por ejemplo, pip 9.0.3, que era la última versión anterior a pip 10 ). Puede hacer esto desde la línea de comando:

pip install pip==9.0.3
1
27.01.2020, 23:32

У меня установлена ​​виртуальная коробка Linux Mint 18 Sarah. Я попал в настоящий беспорядок, когда попытался обновить pip.(в конечном итоге отсутствовало замороженное ключевое слово при использовании нового пункта для установки)

После попытки следовать различным инструкциям, подобным приведенным выше, я выполнил переустановку методом грубой силы, пока не смог снова запустить свои тесты Python и продолжить разработку.

Вот так:

  • Сначала обновление системы (apt update && apt upgrade)
  • затем удалите все установки python методом перебора
    (удаление python2.7 с помощью менеджера пакетов оставит много сломанные пакеты позади)

    rm -f /usr/bin/pip*
    rm -rf /usr/lib/python2.7
    
    rm -f /usr/local/bin/pip*
    rm -f /usr/local/bin/pyt*
    rm -f /usr/local/bin/pip*
    rm -rf /usr/local/lib/python2.7
    
    rm -rf $HOME/.local/bin/pyt*
    rm -rf $HOME/.local/bin/pip*
    rm -rf $HOME/.local/lib/python2.7
    
  • переустановите python из пакетов linux, чтобы получить рабочий пункт

    apt install python2.7  --reinstall
    apt install python-pip --reinstall
    apt install python-setuptools --reinstall
    apt install python-pkg-resources  --reinstall
    
  • переустановите необходимый пакет python с помощью pip, например.:

    pip install wheel
    pip install grequests        
    pip install pytest
    pip install flask
    pip install chardet
    pip install prometheus_client
    pip install bs4
    

Пакеты Python, которые необходимо переустановить, могут явно различаться в зависимости от вашей установки. Надеюсь, я не пропустил ничего важного из своей командной истории, но вы должны получить общее представление. Самым долгим был апгрейд системы. Все остальное прошло довольно быстро

1
27.01.2020, 23:32

Теги

Похожие вопросы