Désactiver la couleur dans le shell / terminal

14

Je veux désactiver toutes les couleurs de ma coque. Pas ls, pas nano, pas vi, rien. Quelle est la meilleure façon d'y parvenir?

Poe
la source

Réponses:

7

si vous utilisez PUTTY pour accéder à distance au shell, alors:
- sur le panneau de gauche, cliquez sur Couleurs
- décochez les trois cases du panneau de droite (elles sont cochées par défaut)

Beel
la source
Je vais devoir passer à un programme terminal qui me permet de le faire. Merci.
Poe
1
La réponse de Geekosaur est meilleure pour vous, vraiment.
ocodo
@slomojo sa réponse n'a pas fonctionné avec mon client terminal
Poe
1
Oh, intéressant, quel client est-ce?
ocodo
J'utilise iTerm (OS X) et j'obtiens toujours des couleurs si j'exporte TERM = vt220, et en 'ls' même après avoir désactivé LS_COLORS
Poe
13

unset LS_COLORS; export TERM=xtermdevrait le faire, ou au moins vous y amener la plupart du temps. Vous devrez peut-être changer cela pour dire TERM=vt220pour certains programmes trop «intelligents».

geekosaure
la source
3
Je recommande vraiment VT220 sur XTERM.
ocodo
6
"xterm" est un terminal couleur, pour désactiver les couleurs dont vous avez besoin TERM = xterm-mono
Idelic
6
xterm -cm

Cela démarrera un xterm sans couleur.

Rajat Bhatia
la source
Cela ne fonctionnera pas si vous avez LS_COLORS défini FYI.
lzap
C'est la meilleure réponse. En outre, @lzap semble être incorrect, au moins sur Ubuntu. xterm -cm me donne un terminal sans couleur sur Ubuntu indépendamment de LS_COLORS.
Haydentech
Eh bien, je voulais dire qu'il casserait le terminal sur les systèmes Red Hat avec LS_COLORS défini par défaut.
lzap
1

J'ai rencontré le même problème lors de l'écriture d'un robot SSH en Python (les couleurs sont apparues comme du charabia lors de l'exécution dans Visual Studio). La solution la plus simple était d'ouvrir un nouveau shell à l'intérieur de l'autre shell en cours d'exécution.

sh

Cela a ouvert une nouvelle coque sans aucun de mes paramètres et toutes les impressions étaient monochromes. Il a également réinitialisé l'invite qui était un bonus pour mon objectif.

Lord Wolfenstein
la source
1

effectuez une sauvegarde de .bashrc, puis ouvrez .bashrc et supprimez toutes ces lignes. cela a l'avantage supplémentaire de désactiver les couleurs du texte dans gedit!

définir une invite de fantaisie (sans couleur, sauf si nous savons que nous "voulons" la couleur)

cas "$ TERM" dans xterm | xterm-color | * -256color) color_prompt = yes ;; esac

décommenter pour une invite colorée, si le terminal en a la capacité; tourné

désactivé par défaut pour ne pas distraire l'utilisateur: le focus dans une fenêtre de terminal

devrait être sur la sortie des commandes, pas sur l'invite

force_color_prompt = oui

if [-n "$ force_color_prompt"]; alors si [-x / usr / bin / tput] && tput setaf 1> & / dev / null; alors # Nous avons un support de couleur; supposons qu'il est conforme à Ecma-48 # (ISO / IEC-6429). (Le manque d'un tel support est extrêmement rare, et un tel cas aurait tendance à prendre en charge setf plutôt que setaf.) Color_prompt = yes else color_prompt = fi fi

if ["$ color_prompt" = yes]; alors si [[$ {EUID} == 0]]; alors 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 unset color_prompt force_color_prompt 42a70,89

S'il s'agit d'un xterm, définissez le titre sur user @ host: dir

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

activer la prise en charge des couleurs de ls et également ajouter des alias pratiques

if [-x / usr / bin / dircolors]; puis testez -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
la source