Выделение команды в терминале

Я предложил бы комбинацию Электроинструментов Unix и Изучения удара Shell

Первая книга будет учить Вас, как работать эффективно, изящно, и творчески с комплектом инструментов Unix, и вторая книга будет учить окружение сценариев в ударе, который является наиболее распространенной оболочкой, используемой дистрибутивами Linux.

4
03.04.2013, 12:50
2 ответа

Можно настроить переменную оболочки PS1 с tput управляйте, таким образом, можно отличить команды от вывода:

$ export PS1="$(tput bold)$(tput setb 4)$PS1$(tput sgr0)"

Проверьте 7-ю подсказку из http://www.thegeekstuff.com/2008/09/bash-shell-ps1-10-examples-to-make-your-linux-prompt-like-angelina-jolie/

2
27.01.2020, 20:58
  • 1
    я имею (комплекс..) путь в ударе для раскрашивания синий команды я ввожу после подсказки и имею получающийся вывод синей команды NOT (использующий прерывание). Но это - вероятно, излишество ^^ –  Olivier Dulac 03.04.2013, 14:11
  • 2
    после помещения его, когда я копирую что-то на своем терминале, чем это перезаписывает командную строку полностью, хотя выполнение так же нормально. Ну, это решит мою проблему, но просто мысль о совместном использовании! –  Rorschach 03.04.2013, 14:14

Существует несколько опций:

  • Используйте оконечный мультиплексор и только выполните ту команду туда. Буфер будет исключительно для сборки;
  • Отправьте вывод в файл и считайте файл после сборки;
  • Окрасьте вывод, как Вы говорите, хотя я рассмотрел бы это в последний раз. Это будет работать, пока сама сборка не имеет никакого вывода цвета:
colcmd() {
    tput setf 3
    "$@"
    tput sgr0
}

Число передало tput setf определяет который цвет использовать. См. свою терминальную документацию для получения информации, о которой цветовые коды соответствуют который цвета. 3 является обычно желтым.

Можно вызвать окрашенные команды как так:

colcmd command args
1
27.01.2020, 20:58
  • 1
    спасибо.. это действительно не работало на меня, но Ваши предложения были gud полезным опытом.. –  Rorschach 03.04.2013, 14:04

Теги

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