Desativar cor no shell / terminal


14

Quero desativar todas as cores no meu shell. Nem ls, nem nano, nem vi, nada. Qual é a melhor maneira de conseguir isso?

Respostas:


7

se você estiver usando PUTTY para acessar remotamente o shell, então:
- no painel esquerdo, clique em Cores
- desmarque as três caixas no painel direito (elas são marcadas por padrão)


Vou ter que mudar para um programa de terminal que me permita fazer isso. Obrigado.
ponto de entrada

1
A resposta do Geekosaur é melhor para você, na verdade.
Ocho 06/04

@slomojo sua resposta não funcionou com o meu cliente de terminal
Poe

1
Oh, interessante, qual cliente é esse?
Ocho 06/04

Estou usando iTerm (OS X) e ainda obter cor se eu export TERM = vt220, e em 'ls' mesmo após LS_COLORS Destruindo
Poe

13

unset LS_COLORS; export TERM=xtermdeve fazê-lo, ou pelo menos levá-lo a maior parte do caminho até lá. Pode ser necessário alterar isso TERM=vt220para alguns programas excessivamente "inteligentes".


3
Definitivamente recomendo o VT220 sobre o XTERM.
Ocho 06/04

6
"xterm" é um terminal de cor, às cores desativar você precisa TERM = xterm-mono
Idelic

6
xterm -cm

Isso iniciará um xterm sem cores.


Isso não funcionará se você tiver LS_COLORS definido como FYI.
Lzap

Esta é a melhor resposta. Além disso, o @lzap parece estar incorreto, pelo menos no Ubuntu. O xterm -cm me fornece um terminal sem cor no Ubuntu, independentemente do LS_COLORS.
Haydentech 17/07/19

Bem, eu quis dizer que ele quebrará o terminal nos sistemas Red Hat com LS_COLORS definido por padrão.
Lzap 15/08/19

1

Eu encontrei o mesmo problema ao escrever um robô SSH em Python (as cores saíram como bobagens quando executadas no Visual Studio). A solução mais simples foi abrir um novo shell dentro do outro shell em execução.

sh

Isso abriu um novo shell sem nenhuma das minhas configurações e todas as impressões eram monocromáticas. Ele também redefiniu o prompt, que era um bônus para o meu objetivo.


1

faça um backup de .bashrc e, em seguida, abra .bashrc e remova todas essas linhas. isso tem o benefício adicional de desativar as cores do texto no gedit!

defina um prompt sofisticado (sem cores, a menos que saibamos que queremos "cores")

case "$ TERM" no xterm | xterm-color | * -256color) color_prompt = yes ;; esac

descomente para um prompt colorido, se o terminal tiver capacidade; virou

desativado por padrão para não distrair o usuário: o foco em uma janela do terminal

deve estar na saída dos comandos, não no prompt

force_color_prompt = yes

if [-n "$ force_color_prompt"]; então se [-x / usr / bin / tput] && tput setaf 1> & / dev / null; então # Temos suporte de cores; suponha que seja compatível com Ecma-48 # (ISO / IEC-6429). (A falta desse suporte é extremamente rara e esse # caso tenderia a suportar setf em vez de setaf.) Color_prompt = yes else color_prompt = fi fi

if ["$ color_prompt" = yes]; então se [[$ {EUID} == 0]]; então PS1 = '$ {debian_chroot: + ($ debian_chroot)} [\ 033 [01; 31m] \ h [\ 033 [01; 34m] \ W \ $ [\ 033 [00m]' else PS1 = '$ {debian_chroot : + ($ debian_chroot)} [\ 033 [01; 32m] \ u @ \ h [\ 033 [00m] [\ 033 [01; 34m] \ w \ $ [\ 033 [00m] 'fi else PS1 =' $ {debian_chroot: + ($ debian_chroot)} \ u @ \ h \ w \ $ 'fi não configurado cor_prompt force_color_prompt 42a70,89

Se este for um xterm, defina o título como user @ host: dir

case "$ TERM" no xterm * | rxvt *) PS1 = "[\ e] 0; $ {debian_chroot: + ($ debian_chroot)} \ u @ \ h \ w \ a] $ PS1" ;; *) ;; esac

habilite o suporte a cores de sl e também adicione apelidos úteis

if [-x / usr / bin / dircolors]; então teste -r ~ / .dircolors && eval "$ (dircolors -b ~ / .dircolors)" || eval "$ (dircolors -b)" alias ls = 'ls --color = auto' #alias dir = 'dir --color = auto' #alias vdir = 'vdir --color = auto'

alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'

fi

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.