Настройка оболочки удара: полужирный/цветной команда

Я думаю, что Вы, вероятно, хотите iconv. Это для преобразования между кодовыми наборами и поддерживает абсурдное количество форматов. Например, для разделения чего-либо не допустимого в UTF-8 Вы могли использовать:

iconv -c -t UTF-8 < input.txt > output.txt

Без-c опции это сообщит о проблемах в преобразовании в stderr, таким образом, с процессом направление могло Вы сохранять список их. Иначе должен был бы разделить материал non-UTF8 и затем

diff input.txt output.txt

для списка того, где изменения были внесены.

13
05.01.2016, 03:04
2 ответа

Необходимо было бы уехать, цвет, запаздывающий после PS1 (запустите его после > в Вашем примере), и затем используют удар DEBUG захватите для очистки цвета, прежде чем команда была выполнена (но после нажатия Enter в оболочке. Попробуйте что-то вроде этого:

shopt -s extdebug
trap "tput sgr0" DEBUG
12
27.01.2020, 19:53
  • 1
    для кого-то незнакомец к управляющим кодам: был бы этот заповедник исходная окраска команды (например, будет ls --color=always будьте окрашены)? –  n611x007 14.03.2013, 15:16
  • 2
    @naxa - Да, поскольку это явно устанавливает цветовые коды (за исключением цветов, которые окрашены в терминальном цвете по умолчанию, который только вступит в силу после первого цвета). –  Chris Down 15.03.2013, 03:13
  • 3
    Этот прием, кажется, вмешивается в заполнение клавишей Tab (печатает странные вещи как ^[(B^[[m). Это происходит только в некоторых системах, хотя: Я протестировал это в двух системах, и под управлением Ubuntu 12.04 LTS, и у только одного из них была интерференция. –  musiphil 15.07.2013, 21:47

Для полноты, вот как установить цвет подсказки и цвет ввода командной строки в bash. Поместите эти строки в свой .bashrc .

PS1='\[\e[1;34m\]\w\$ \[\e[0;32m\]'
trap 'printf \\e[0m' DEBUG

Ловушка DEBUG, предложенная Крисом Дауном , используется для сброса текстовых атрибутов. Это предназначено для отладки, но также полезно выполнить код перед выполнением команды, введенной пользователем .

В настройке приглашения:

  • \ [… \] используется вокруг управляющих последовательностей, чтобы сообщить bash, что они не занимают площади экрана (без них экран будет искажен, когда bash потребуется перерисуйте подсказку).
  • \ e [… m , где - число или, в более общем смысле, последовательность чисел, разделенных точкой с запятой, - это escape-последовательности , отправляемые на терминал для воздействия цвет и другие атрибуты следующего текста. Например, 1; 34 задает полужирный синий цвет; 0; 32 сбрасывает все атрибуты, затем меняет цвет на зеленый. Настроить по вкусу.
  • \ w \ $ распечатать текущий каталог и $ или # . Вы, конечно, можете изменить это на все, что захотите, и вставить изменения текстовых атрибутов между ними, если хотите.
  • В конце есть последнее изменение атрибута, которое устанавливает цвет ввода текста.
4
27.01.2020, 19:53

Теги

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