Добавление суффикса в конце каждой команды оболочки

Действительно ли возможно автоматически добавить некоторые символы в конце каждой команды, введенной в терминале.

Например, если я пишу

sudo apt-get update

оболочка выполнится

sudo apt-get update && notify-send Done

без меня пишущий && notify-send Done часть.

Заранее спасибо!

6
задан 9 July 2015 в 10:29

2 ответа

Если Вы используете bash в качестве своей оболочки по умолчанию, можно установить PROMPT_COMMAND.

От bash страница справочника:

PROMPT_COMMAND
If set, the value is executed as a command prior to issuing each primary prompt.

Поэтому просто вставляют следующую строку в Вашем .bashrc для получения уведомления для каждой команды:

PROMPT_COMMAND="notify-send Done"

Так каждый раз Вашу подсказку удара называют (нормальное поведение, когда команда будет закончена с успехом или не), Вы получите уведомление.

Примечание : Вы будете также уведомлены, если Вы нажмете просто , Входят , поскольку подсказка будет отображена снова.

6
ответ дан 23 November 2019 в 07:49

Можно связать некоторые символы с к , вводят ключ:

$ bind '"\C-M":" && echo test\n"'

Это имеет некоторые недостатки, например, если Вы просто нажимаете Enter:

-bash: syntax error near unexpected token `&&'

можно заблокировать этот эффект путем завершения строк с символом # - это превратит дополнительный текст в безопасный комментарий.

Все еще я сказал бы, что это походит на действительно плохую идею.

0
ответ дан 23 November 2019 в 07:49

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

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