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?

Poe
fonte

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)

Beel
fonte
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".

geekosaur
fonte
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.

Rajat Bhatia
fonte
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.

Lord Wolfenstein
fonte
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

Al Brundage
fonte