OS X Terminal Colors

Je suis nouveau sur OS X, je viens de recevoir un Mac après avoir travaillé avec Ubuntu Linux pendant un certain temps. Parmi les nombreuses choses que j’essaie de comprendre, il y a l’absence de couleurs dans la fenêtre de mon terminal – comme celles affichées (sous Linux) lors de l’exécution de ls -la ou de git status

Je n’arrive pas à comprendre comment activer les couleurs dans ma shell.

Je sais, ce fil est vieux mais le problème pas.

Voici une solution que j’ai trouvée pour activer les couleurs globales du terminal .

Modifiez votre .bash_profile (depuis OS X 10.8) – ou (pour les versions 10.7 et antérieures): .profile ou .bashrc ou /etc/profile (selon la disponibilité) – dans votre répertoire personnel et ajoutez le code suivant:

 export CLICOLOR=1 export LSCOLORS=GxFxCxDxBxegedabagaced 

CLICOLOR=1 permet simplement de colorer votre terminal.

LSCOLORS=... spécifie comment colorer des éléments spécifiques.

Après avoir modifié le .bash_profile , démarrez un terminal et forcez les modifications en exécutant:

source ~/.bash_profile

Ensuite, allez à Terminal > Preferences , cliquez sur l’onglet Profiles puis sur le sous-onglet Text et cochez Display ANSI Colors .

Vérifié sur Sierra (mai 2017).

Vous pouvez utiliser la syntaxe Linux dans l’un de vos scripts de démarrage. Je viens de tester ceci sur une boite OS X Mountain Lion.

par exemple. dans votre ~/.bash_profile

 export TERM="xterm-color" export PS1='\[\e[0;33m\]\u\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$ ' 

Cela vous donne une belle invite colorée. Pour append la sortie ls colorée, vous pouvez append un alias ls="ls -G" .

Pour tester, lancez simplement un source ~/.bash_profile pour mettre à jour votre terminal actuel.

Note latérale sur les couleurs: Les couleurs sont précédées d’une séquence d’échappement \e et définies par une valeur de couleur, composée de [style;color+m] et entourée d’une séquence échappée [] . par exemple.

  • rouge = \[\e[0;31m\]
  • rouge gras (style 1) = \[\e[1;31m\]
  • coloration claire = \[\e[0m\]

J’ajoute toujours un schéma de couleurs légèrement modifié dans le fichier .bash_profile de la racine pour rendre le nom d’utilisateur rouge, donc je vois toujours clairement si je suis connecté en tant que root (pratique pour éviter les erreurs si plusieurs fenêtres de terminal sont ouvertes).

Dans /root/.bash_profile :

PS1='\[\e[0;31m\]\u\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$ '

Pour tous mes comptes SSH en ligne, je m’assure de mettre le nom d’hôte en rouge, pour distinguer si je suis dans un terminal local ou distant. .bash_profile simplement le fichier .bash_profile dans votre répertoire personnel sur le serveur. S’il n’y a pas de fichier .bash_profile sur le serveur, vous pouvez le créer et le générer à la connexion.

Les méthodes MartinVonMartinsgrün et 4Levels ont confirmé leur efficacité sur Mac OS X Mountain Lion.

Le fichier que j’avais besoin de mettre à jour était ~ / .profile.

Cependant, je ne pouvais pas laisser cette question sans recommander mon application préférée, iTerm 2 .

iTerm 2 vous permet de charger des schémas de couleurs globaux à partir d’un fichier. Vraiment facile d’expérimenter et d’essayer un jeu de couleurs.

Voici une capture d’écran de la fenêtre iTerm 2 et des préférences de couleur. iTerm2 Color Preferences Capture d'écran Mac

Une fois que j’ai ajouté ce qui suit à mon fichier ~ / .profile, iTerm 2 était capable de remplacer les couleurs.

 export CLICOLOR=1 export LSCOLORS=GxFxCxDxBxegedabagaced export PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' 

Voici un excellent repository avec quelques bons presets:

iTerm2 Color Schemes sur Github par mbadolato

Bonus: Choisissez “Afficher / masquer iTerm2 avec un raccourci clavier à l’échelle du système” et associez la clé à BetterTouchTool pour un cacher / afficher le terminal avec un geste de souris.

Si vous voulez que vos ls soient colorisés, vous devez modifier votre fichier ~ / .bash_profile et append la ligne suivante (si elle n’est pas déjà écrite):

 source .bashrc 

Ensuite, vous éditez ou créez un fichier ~ / .bashrc et écrivez un alias dans la commande ls:

 alias ls="ls -G" 

Maintenant, vous devez taper source .bashrc dans un terminal s’il a déjà été lancé, ou simplement ouvrir un nouveau terminal.

Si vous voulez plus d’options dans votre ls lisez le manuel ( man ls ). Les options ne sont pas exactement les mêmes que dans un système GNU / Linux.

Vérifiez ce que $ TERM donne: le mien est xterm-color et ls -alG fait alors une sortie colorisée.

Si vous utilisez tcsh, modifiez votre fichier ~/.cshrc pour inclure les lignes:

 setenv CLICOLOR 1 setenv LSCOLORS dxfxcxdxbxegedabagacad 

Où, comme dit Martin, LSCOLORS spécifie le schéma de couleurs que vous souhaitez utiliser.

Pour générer les LSCOLORS que vous souhaitez utiliser, consultez ce site

Lorsque j’ai travaillé sur Mac OS X en laboratoire, j’ai pu obtenir les couleurs du terminal en utilisant Terminal (plutôt que X11), puis en éditant le profil (à partir de la barre de menus Mac). L’interface est un peu bizarre sur les couleurs, mais vous devez définir le thème modifié par défaut.

Les autres parameters ont fonctionné en éditant .bashrc .