Aucune couleur de terminal dans Ubuntu Server 12.04

13

J'ai tout essayé à partir de cette question en double mais je n'arrive toujours pas à la faire fonctionner. La seule différence avec cette question est que lorsque je cours, env | grep TERMje reçois TERM=xtermau lieu de TERM=xterm-color. Je ne pense pas que cela compte cependant, ils semblent être assez interchangeables.

Ce que je ne comprends pas cependant, c'est que la seule chose qui a disparu, ce sont les couleurs de l'invite. Par exemple, si je lance nanoet qu'il détecte la syntaxe du fichier, par exemple s'il s'agit d'un script, j'obtiens des couleurs. De plus, lorsque j'exécute la envcommande mentionnée précédemment, le TERMtexte réel est rouge.

Donc, les couleurs fonctionnent évidemment, c'est juste que je n'ai plus de dossiers colorés, de fichiers exécutables, etc. Je pense que cela peut également avoir eu lieu lors de l'installation de Ruby / RVM. J'ai essayé de remplacer .bashrc. ( modifier Cependant, lors de la création d'un nouvel utilisateur, cet utilisateur a des couleurs de travail)

Je suppose que cela a une solution assez simple, mais j'en ai tellement marre de googler maintenant que j'apprécierais vraiment certaines informations sur la façon dont les paramètres de coloration fonctionnent dans le terminal et comment cela pourrait se produire. Merci!

pzkpfw
la source

Réponses:

31

Vous n'avez aucun problème avec votre terminal ou son paramétrage. Essaye ça:

ls --color

Ça marche, non?

Vous avez probablement remplacé votre .bashrc. Vous pouvez trouver le .bashrc d'origine, qui définit par exemple l'alias ls='ls --color=auto'et également les invites de couleur dans /etc/skel/.

Copiez un nouveau .bashrcavec:

mv ~/.bashrc ~/.bashrc.old
cp /etc/skel/.bashrc ~/.bashrc
janvier
la source
J'avais un lalias .bash_profile, alors je l'ai changé maintenant alias l='ls -l --color'. Taper lme donne maintenant une liste colorée, mais lsmanque toujours de couleur, même si j'ai vu que le .bashrcfichier a spécifiquement un alias pour qu'il soit coloré. Ugh, merci beaucoup pour votre réponse, je vais devoir lire de la documentation bash.
pzkpfw
1
ls (le programme par défaut) n'affiche pas les couleurs sauf si vous spécifiez une option (--color = auto). Si vous souhaitez que ce soit le comportement par défaut, créez un alias ls='ls --color=auto'(comme la plupart des gens).
Janvier
Ouais, ce me dérange est que si a ls fait Afficher les couleurs d' abord (je pense qu'il est la valeur par défaut dans Ubuntu Server).
Peu importe
1
La valeur par défaut dans /etc/skel/.bashrc est de définiralias ls='ls --color=auto'
janvier
1

Sur Ubuntu, dans .bashrc, il y a une section qui dit:

# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
# force_color_prompt=yes

Il suffit donc de décommenter le force_color_promp=yes

zevij
la source
Je suggère également d'indiquer à @pzkpfw de se déconnecter et de se reconnecter pour voir les changements en action.
dgonzalez