XRDP запускает неправильный рабочий стол (Ubuntu 18.04)

Ответ муру прав, что пакет называется command-not-found. В основном он предоставляет скрипт python /usr/lib/command-not-found, который фактически выполняет основное задание.

Но сообщения, которые вы получаете в Ubuntu, фактически определяются функцией, которая фактически использует свойства command-not-found. Его называют command_not_found_handle и находятся в /etc/bash.bashrc.

$ type -a command_not_found_handle 
command_not_found_handle is a function
command_not_found_handle () 
{ 
    if [ -x /usr/lib/command-not-found ]; then
        /usr/lib/command-not-found -- "$1";
        return $?;
    else
        if [ -x /usr/share/command-not-found/command-not-found ]; then
            /usr/share/command-not-found/command-not-found -- "$1";
            return $?;
        else
            printf "%s: command not found\n" "$1" 1>&2;
            return 127;
        fi;
    fi
}

Из-за вышеупомянутой функции мы получаем разные сообщения об ошибках в разных случаях:

$ svn
The program 'svn' is currently not installed. You can install it by typing:
sudo apt-get install subversion

$ foobar
foobar: command not found

Позволяет проверить: [ ! d4]

$ /usr/lib/command-not-found svn
The program 'svn' is currently not installed. You can install it by typing:
sudo apt-get install subversion

$ /usr/lib/command-not-found foobar
foobar: command not found

Поскольку у вас нет включенного пакета command-not-found, вы каждый раз выполняете следующий фрагмент функции command_not_found_handle:

printf "%s: command not found\n" "$1" 1>&2;
return 127;

Следовательно, вы получаете каждый раз:

$ svn
svn: command not found

$ foobar
foobar: command not found

В двух словах вы можете установить пакет command-not-found, а затем добавить функцию (если она еще не указана) в файл /etc/bash.bashrc (для всех пользователей ) или ~/.bashrc (только для вас).

0
задан 16 May 2018 в 22:29

0 ответов

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

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