7

Я часто использую подоболочку mc. Поэтому я хочу, чтобы промо mc-subsell отличалось от основной оболочки. Скажите, как я могу изменить подзапрос следующим образом:

MC:$ Current_dir $

большое спасибо

2 ответа2

3

Эта страница может вам помочь. Выдержка:

Bash позволяет пользователям делать очень сложные вещи при определении приглашения оболочки, включая цвета и распространение информации в заголовок xterm. К сожалению, когда вы хотите использовать mc (Midnight Commander) в сочетании с приглашениями bash, вы можете обнаружить, что не все сложные escape-последовательности обрабатываются mc правильно. Чтобы преодолеть эту проблему, у вас может быть специальная подсказка только для mc.

Что вы хотели:

if ps $PPID |grep mc; then
    PS1="mc: \w"
fi
3

Я столкнулся с той же проблемой, прежде чем нашел рецепт: поместите следующий текст в файл ~/.local/share/mc/bashrc:

#!/bin/bash

if [ -f $HOME/.bashrc ]; then
        . $HOME/.bashrc
else
        if [ -f /etc/bashrc ]; then
                . /etc/bashrc
        fi
fi

if [ -z "$PS1" ]; then
        PS1="(mc)[\u@\h \W]\$ "
else
        old_PS1=$PS1
        export PS1="(mc)$old_PS1"
fi

или в соответствии с вашими потребностями:

#!/bin/bash

if [ -f $HOME/.bashrc ]; then
        . $HOME/.bashrc
else
        if [ -f /etc/bashrc ]; then
                . /etc/bashrc
        fi
fi

PS1="mc:\$\W\$ "

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .