Случайно удалил gcc5-base, и теперь я не могу найти ни одну из общих команд.

Итак, я кое-что выяснил на своем сервере через SSH и случайно удалил базу gcc5, в результате чего были потеряны такие пакеты, как apt и другие основные зависимости

Как мне это исправить, пожалуйста?

-121 ---928173- Не отображается имя виртуальной среды python в приглашении bash, когда PROMPT_COMMAND используется для изменения PS1Я сократил приглашение bash, добавив следующий блок кода в файл ~/.bashrc. get_PS1(){ local pwdmaxlen=30 local trunc_symbol="\[$(tput setaf 1)$(tput bold)\]..." if [...

Я сократил приглашение bash, добавив следующий блок кода в файле ~/.bashrc.

get_PS1(){
    local pwdmaxlen=30
    local trunc_symbol="\[$(tput setaf 1)$(tput bold)\]..."
    
    if [[ "${#PWD}" -gt "$pwdmaxlen" ]]; then
        local right_chunk="\[$(tput setaf 4)$(tput bold)\]${PWD:$((${#PWD}-$pwdmaxlen)):${#PWD}}\[$(tput sgr0)\]"
        PS1="${trunc_symbol}${right_chunk} \$ "
    else
        PS1="\[$(tput setaf 4)$(tput bold)\]\$(pwd) \$\[$(tput sgr0)\] "
    fi
}

PROMPT_COMMAND=get_PS1

Когда он активен, я имею в виду после exec bash, если я создаю виртуальную среду с помощью virtualenv venvи впоследствии активирую ее с помощью source venv/bin/activate, (venv)должны были появиться в начале командной строки bash. Невозможно понять, что я запускаю виртуальную среду, хотя , что на самом деле делает python, показывают, что я нахожусь внутри виртуальной среды.

Насколько я понимаю, это происходит только тогда, когда я использую переменную PROMPT_COMMAND. Неважно, какую модификацию я сделал внутри функции get_PS1, она всегда будет вести себя так. Я знаю способ PROMPT_DIRTRIM, но это не то, что мне нужно.

Версия Bash: 5.0.17(1)-выпуск. У меня Kubuntu 20.04.3 LTS.

Кстати, этот кодовый блок я узнал из здесь.

Спасибо. Дайте мне знать, если потребуется какая-либо другая информация.

0
задан 19 January 2022 в 18:57

0 ответов

Другие вопросы по тегам:

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