Название терминала показывает sudo, но я хочу, чтобы команда sudo'ed

Таким образом, я стал довольно хорошо разбираться в задачах здесь, редактируя все сообщения, чтобы отвечать на вопросы, поэтому я думаю, что пришло время спросить:

Техническая информация

Распространение: Gentoo
Настольная среда: KDE
Терминальный эмулятор: Kterm

проблема

Любой, кто долгое время использует Gentoo, привыкнет к терминалу и исходному коду, плавающим. Таким образом, я пришел зависеть от терминала даже в KDE с такими командами, как:

  • kdesudo kate /etc/portage/make.conf
  • sudo emerge -uDav world

Эти команды работают так, как ожидалось, моя проблема здесь в том, что название kterm показывает username:sudo Я хочу, чтобы он отображал имя пользователя: sudo elevated command или username: elavated command .

Я использую следующий профиль:

 # /etc/profile: login shell setup # # That this file is used by any Bourne-shell derivative to setup the # environment for login shells. # # Load environment settings from profile.env, which is created by # env-update from the files in /etc/env.d if [ -e /etc/profile.env ] ; then . /etc/profile.env fi # You should override these in your ~/.bashrc (or equivalent) for per-user # settings. For system defaults, you can add a new file in /etc/profile.d/. export EDITOR=${EDITOR:-/bin/nano} export PAGER=${PAGER:-/usr/bin/less} # 077 would be more secure, but 022 is generally quite realistic umask 022 # Set up PATH depending on whether we're root or a normal user. # There's no real reason to exclude sbin paths from the normal user, # but it can make tab-completion easier when they aren't in the # user's PATH to pollute the executable namespace. # # It is intentional in the following line to use || instead of -o. # This way the evaluation can be short-circuited and calling whoami is # avoided. if [ "$EUID" = "0" ] || [ "$USER" = "root" ] ; then PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:${ROOTPATH}" else PATH="/usr/local/bin:/usr/bin:/bin:${PATH}" fi export PATH unset ROOTPATH if [ -n "${BASH_VERSION}" ] ; then # Newer bash ebuilds include /etc/bash/bashrc which will setup PS1 # including color. We leave out color here because not all # terminals support it. if [ -f /etc/bash/bashrc ] ; then # Bash login shells run only /etc/profile # Bash non-login shells run only /etc/bash/bashrc # Since we want to run /etc/bash/bashrc regardless, we source it # from here. It is unfortunate that there is no way to do # this *after* the user's .bash_profile runs (without putting # it in the user's dot-files), but it shouldn't make any # difference. . /etc/bash/bashrc else PS1='\u@\h \w \$ ' fi else # Setup a bland default prompt. Since this prompt should be useable # on color and non-color terminals, as well as shells that don't # understand sequences such as \h, don't put anything special in it. PS1="${USER:-$(whoami 2>/dev/null)}@$(uname -n 2>/dev/null) \$ " fi for sh in /etc/profile.d/*.sh ; do [ -r "$sh" ] && . "$sh" done unset sh и # /etc/profile: login shell setup # # That this file is used by any Bourne-shell derivative to setup the # environment for login shells. # # Load environment settings from profile.env, which is created by # env-update from the files in /etc/env.d if [ -e /etc/profile.env ] ; then . /etc/profile.env fi # You should override these in your ~/.bashrc (or equivalent) for per-user # settings. For system defaults, you can add a new file in /etc/profile.d/. export EDITOR=${EDITOR:-/bin/nano} export PAGER=${PAGER:-/usr/bin/less} # 077 would be more secure, but 022 is generally quite realistic umask 022 # Set up PATH depending on whether we're root or a normal user. # There's no real reason to exclude sbin paths from the normal user, # but it can make tab-completion easier when they aren't in the # user's PATH to pollute the executable namespace. # # It is intentional in the following line to use || instead of -o. # This way the evaluation can be short-circuited and calling whoami is # avoided. if [ "$EUID" = "0" ] || [ "$USER" = "root" ] ; then PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:${ROOTPATH}" else PATH="/usr/local/bin:/usr/bin:/bin:${PATH}" fi export PATH unset ROOTPATH if [ -n "${BASH_VERSION}" ] ; then # Newer bash ebuilds include /etc/bash/bashrc which will setup PS1 # including color. We leave out color here because not all # terminals support it. if [ -f /etc/bash/bashrc ] ; then # Bash login shells run only /etc/profile # Bash non-login shells run only /etc/bash/bashrc # Since we want to run /etc/bash/bashrc regardless, we source it # from here. It is unfortunate that there is no way to do # this *after* the user's .bash_profile runs (without putting # it in the user's dot-files), but it shouldn't make any # difference. . /etc/bash/bashrc else PS1='\u@\h \w \$ ' fi else # Setup a bland default prompt. Since this prompt should be useable # on color and non-color terminals, as well as shells that don't # understand sequences such as \h, don't put anything special in it. PS1="${USER:-$(whoami 2>/dev/null)}@$(uname -n 2>/dev/null) \$ " fi for sh in /etc/profile.d/*.sh ; do [ -r "$sh" ] && . "$sh" done unset sh 

Я etc/bashrc/bashrc файл etc/bashrc/bashrc здесь, когда вернусь домой …


Я оставил комментарии, чтобы дать новым пользователям здесь удар по ответу. Таким образом, самый тщательный ответ, который будет работать, будет начисляться, даже если ваш новый здесь. Я хочу правильно отформатированный ответ с ссылками и ссылками

Обновить

Изображение Kterm

One Solution collect form web for “Название терминала показывает sudo, но я хочу, чтобы команда sudo'ed”

Не уверен в kterm , но, вероятно, это совместимость с xterm – большинство из них. Если это так, то вы захотите вставить что-то в свое приглашение, которое задает заголовок окна :

  • 3.1 escape-последовательности xterm

  • Заголовки окон и значков могут быть изменены в запущенном xterm с помощью управляющих последовательностей XTerm. В этом отношении полезны следующие последовательности:

    • ESC]0;stringBELESC]0;stringBEL имя значка и заголовок окна для строки
    • ESC]1;stringBEL – установить имя значка в строку
    • ESC]2;stringBEL – установить заголовок окна в строку
  • … где ESC – escape-символ ( \033 ), а BEL – символ колокола ( \007 ).

Вы можете поместить их в подсказку между бегом без печати – если вы используете bash . В этой оболочке вы можете использовать:

 PS1="\[$(printf '\033]0;"${USER}@${BASH_COMMAND}"\007')\]" 

Или вы можете поместить что-то подобное в переменную среды $PROMPT_COMMAND .

НО…

По-видимому, konsole варьировалась по версии относительно того, разрешит ли она задавать имя окна с помощью escape-последовательности. В какой-то момент во время цикла версии 3 он прекратил интерпретацию последовательности ESC]33;Window nameBEL и соблюдал последовательности xterm только для изменения названий вкладок.

Начиная с версии 4.9 , хотя konsole должна хотя бы почитать странную ESC]30;Tab NameBEL последовательность, и если вы настроите ее как пустую в диалоговом окне настроек, то имя окна будет автоматически клонировано с текущей активной вкладки.

Я не знаю, можно ли использовать более распространенные xterm последовательности xterm для установки названия окна или нет. Однако, если информация, предлагаемая здесь, недостаточна для получения удовлетворительного решения, то я подозреваю, что вы найдете полезную информацию, щелкнув ссылки, прикрепленные к соответствующим изменениям, записанным для версии 4.9 в этом списке изменений .

  • Как настроить параметры бумаги по умолчанию для Wine?
  • Почему плымут не обновится?
  • Как разрешить привилегированным командам сбой, но отвечать?
  • Как удалить набор из portage
  • Как получить / получить источники для ядра 2.6.36-gentoo-r4 в дистрибутиве Gentoo Linux?
  • Как отличаться между зависимостями построения и зависимостями от использования?
  • Не удалось переустановить Grub из live CD
  • Программа классной книги, которая работает на gentoo
  • Почему / lib / модули настолько огромны под моим gentoo, по сравнению с Ubuntu
  • Как получить доступ к рейд-разделам после отказа контроллера
  • Gentoo portage продолжается после выключения
  • Interesting Posts

    Установка Java в Ubuntu 10.04 Firefox / Chrome

    Gedit не сохранит файл на общем ресурсе VirtualBox: текстовый файл занят

    Как включить параметр ядра MMC_UNSAFE_RESUME

    Unicode emoji не отображается в подсказке tcsh

    Как использовать команду cat для отображения содержимого текстового файла с пронумерованными параграфами?

    XMonad MouseResizableTile автоматическое перебалансирование панели

    Почему входящие пакеты на интерфейсе TAP видны с помощью tcpdump, но не с iptables?

    Как понимает wayland какой монитор?

    Как перезапустить скрипт python через одну секунду с помощью UPSTART?

    Выходной текущий день с использованием cal

    Apache 2.4 SSL Config – сервер отклоняет запросы с HTTP 400

    DNSSEC в корневой зоне? Как это использовать?

    Как заставить nfs-kernel-server.service инициализировать, когда единственным экспортом NFS являются ZFS?

    Скопировать только разрешения и права собственности из одного файла tar в другой

    Проблемы UTF-8 при отправке файлов формата git format-patch с помощью mutt

    Linux и Unix - лучшая ОС в мире.