Как отключить цвета для определенной команды?

Попробуйте это..

Если вас устраивает вывод, просто удалите эхо-слово.

for i in access*; do echo mv $i ${i%.*}; done
-2
15.06.2021, 19:59
2 ответа

Если вы хотите разрешить некоторые изменения в форматировании, вы можете просто передать их черезcat

 ls | cat

Без цветов, но с новой строкой для каждой записи.


Редактировать:

Отключение цветов через настройки оболочки

Проверьте rc-файл (s )вашей оболочки и посмотрите, где установлены цвета, затем создайте новый .<shell>rc_mono, в котором эти настройки удалены, отправьте его и готово. Например. для баша:

$cat ~/.bashrc_mono
export TERM=xterm-mono
. ~/.bashrc
alias ls='ls --color=none'
alias grep='grep --color=none'

Обратите внимание, что . ~/.bashrcдолжен предшествовать новым псевдонимам для lsи grep, так как их цвет обычно устанавливается в ~/.bashrc. Так что все, что вам нужно сделать, это

. ~/bashrc_mono ; ls 

Соответственно, "повторить цвета" -rc может быть неплохо:

$cat ~/.bashrc_recolorize
export TERM=xterm-256color
. ~/.bashrc

Используйте, например,. htopи вы увидите разницу.

0
28.07.2021, 11:25

Один из вариантов — установить для переменной TERMтип терминала, который не поддерживает цвета.

Примеры:

TERM=dumb ls
TERM=dumb command_name
echo foo | TERM=dumb grep --color o

Указание программам использовать простой терминал может также иметь другие (нежелательные )эффекты в зависимости от выполняемой вами команды, например, viможет больше не распознавать клавиши управления курсором.

Как предложил FelixJN , вы также можете попробовать TERM=xterm-mono, но в моей тестовой системе (Git bash для Windows )это не подавляет цвета, в отличие от TERM=dumb.

1
28.07.2021, 11:25

Теги

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