Page 2 sur 2

Re: Mettre en valeur le prompt du terminal

Posté : dim. 16 déc. 2018 21:03
par Christian_B

Dernier message de la page précédente :

arghlub a écrit :1. pourquoi utiliser «su» plutôt que «sudo» ???? t'es administrateur-linux ??? à priori non, donc contente toi du "sudo", ça le fait très bien.
Je n'ai jamais compris les réserves de certains envers su et le fait qu'elle ne fonctionne pas par défaut (il faut changer le mdp de root). Pour moi c'est juste une coquetterie. Si on a plusieurs commandes à faire sous root, su revient exactement au même que plusieurs sudo et c'est juste plus simple et donc plus agréable. Ensuite on revient à son environnement perso par exit ou ^D.
On ne peut pas à la fois dire "faut que tu te documentes" (sur les trucs compliqués comme certaines subtilités de syntaxe) et "t'es pas administrateur". Plus on connaît le shell plus on est en fait administrateur de sa machine, même sans carte professionnelle. Bon mais c'est subjectif, chacun fait comme il veut (ou il peut) en fonction du temps consacré, etc.
arghlub a écrit :2. Laisse tomber les conditions, si tu es color_prompt, c'est le premier "PS1" qui est important.
Non justement, comme je l'ai dit, le premier PS1 qui est sous la condition :

Code : Tout sélectionner

if [ "$color_prompt" = yes ]; then
n'est pas actif. Il me vient maintenant à l'idée que c'est parce qu'il est masqué par le dernier, qui est sous :

Code : Tout sélectionner

case "$TERM" in
xterm*|rxvt*)
qui est celui que j'ai modifié. Je vais essayer de mettre en commentaire cette partie sous "case" pour voir.
Autrement, merci Tyrry, je vais regarder ces docs dès que j'ai un moment.
zeb a écrit :Il y a aussi les préférences qui permettent une personnalisation de l'affichage du terminal (y a peut être cette option, ce qui éviterait toutes perpétrations
Non justement, comme je l'ai précisé, les préférences du terminal Mate (Menu Edition/Préférences du profil). permettent un réglage sophistiqué des couleurs de texte et de fond mais ne font aucune allusion au prompt dont l'aspect spécifique est uniquement géré par les fichiers de config de bash.

Re: Mettre en valeur le prompt du terminal

Posté : dim. 16 déc. 2018 21:15
par arghlub
Christian_B a écrit : dim. 16 déc. 2018 21:03 On ne peut pas à la fois dire "faut que tu te documentes" (sur les trucs compliqués comme certaines subtilités de syntaxe) et "t'es pas administrateur".
à priori tu ne sais pas ce qu'est un administrateur (gérer un parc de machines et que tu en sois le root, je te parle pas d'une utilisation personnelle)
Donc il te reste la doccumentation (il me semble que tu as assez d'infos sur le "bashrc"' pour aller faire une recherche par toi-même - pas sûr que tu ais lu les liens que j'ai mis au dessus)

Re: Mettre en valeur le prompt du terminal (complément)

Posté : dim. 16 déc. 2018 21:41
par Christian_B
Non, contrairement à ce que je supposais, l'invalidation du la 2e gestion du prompt (de case à esac, pour les terminaux xterm*|rxvt*) ne suffit pas à activer les options de couleur prévues dans le 1er prompt.
Par contre, si de plus je modifie ainsi la gestion conditionnelle du prompt :

Code : Tout sélectionner

if [ "$color_prompt" = yes ]; then
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
#    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h:\w\[\033[00m\]\$ ' # Graisse et couleur ajoutées.
fi
ça marche, le prompt est en gras et vert.
Donc je suis dans le cas où color_prompt" = no bien que mon terminal soit en couleurs, c'est la 2e cause du problème. Et comme je l'avais noté, je ne sais pas du tout pourquoi (erreur de script) ni où color_prompt est déclarée. Si je ne viens pas à bout de ce point, je reviendrai à la solution précédente, après tout il est peu probable que j'aie à utiliser un terminal sans couleurs.

Re: Mettre en valeur le prompt du terminal

Posté : dim. 16 déc. 2018 22:34
par Christian_B
arghlub,
Les discussions sur l'emploi de su ou sur les bizarreries de la syntaxe du dernier prompt sont annexes.
Je sais bien qu'administrer une machine ou des machines en réseau n'est pas la même chose, mais ce n'était pas la question. D'ailleurs à une époque (assez lointaine) j'avais travaillé sous UNIX (dans un tout autre contexte) quoiqu'à un premier niveau de maintenance seulement.
Evidemment, c'est dans tes liens que j'ai trouvé la signification et la syntaxe exacte des modifs d'aspect du prompt (que j'ai obtenues). Mais une référence comme celle sur mistra.fr est un peu volumineuse pour la consulter en profondeur juste pour améliorer le point qui reste en suspens (sans être sûr d'y trouver la solution).

Car par ailleurs nos réponses se sont croisées. La question qui subsiste après mon complément de réponse est celle de l'initialisation correcte de la variable color_prompt. A moins que je me trompe sur sa signification, il me semble qu'elle devrait être positionnée selon que le terminal lancé gère les couleurs ou non.

Re: Mettre en valeur le prompt du terminal

Posté : dim. 16 déc. 2018 22:46
par arghlub
Bon que cela soit clair : tu as le “color_prompt”activé, ne te préoccupe pas de ça.
Ceci dit je ne te répond plus, t'as de la lecture à faire (point).

[Edit] je me dis que tu as fais "nawak" avec ton système..... pas de ~/.bashrc ..... très étrange, mais bon continue tes bidouillages, bientôt arrive LM19.1 ça sera l'occasion pour que tu fasses un peu du ménage. ;)
un ami me souffle : «un petit "sudo rm -rf" ça lui ferait pas de mal» :l :lol: :lol:

Re: Mettre en valeur le prompt du terminal

Posté : lun. 17 déc. 2018 00:42
par Christian_B
J''ai vu tardivement que la valeur de color_prompt, gérée au dessus de la définition de PS1 (dans /root/.bashrc), dépend d'un test sur le résultat d'une commande tput. Comme je ne vois pas pourquoi le test échoue, je laisse quand même tomber cet aspect.
Pour embêter les administration pro susceptibles qui n'aiment pas que les amateurs utilisent su ;) je propose une amélioration de 'sudo rm -rf', à savoir :

Code : Tout sélectionner

admin_pro@vieux_serveur:~$: su -
Mot de passe : 
root@ch-H81N:~#: cd ..
root@ch-H81N:/#: rm -rf
Sauvegardez bien tout avant. Je décline toute responsabilité quand au résultat. :evil:

Re: Mettre en valeur le prompt du terminal

Posté : lun. 17 déc. 2018 06:17
par arghlub
Salut Christian,

Explique-moi le rapport entre la mise en forme du prompt et ta super astuce bidon pour faire un "rm -rf" ????
Car là c'est hors-sujet.

Pour ton "rm -rf", fais un alias ça sera plus efficace. Cependant je vois pas trop l'intérêt à part faire de grosses bêtises.

Bref, ton sujet est résolu, merci de ne pas digresser sur tout ce qui pourrait toucher le terminal (un forum entier ne serait pas suffisant pour faire le tour du Bash).
;)

Re: Mettre en valeur le prompt du terminal

Posté : lun. 17 déc. 2018 14:05
par Christian_B
Ça c'est meilleure.
arghlub, j'ai dû dire quelque chose qui t'a mis de mauvaise humeur.
C'est toi qui commences à blaguer plutôt férocement avec rm -rf en marge d'une réponse (l'aurais-tu déjà oublié ?) , sans compter le commentaire hors spoiler (que je préfère ignorer) juste parce que je n'ai pas de ~/.bashrc .

Et quand je réagis sur le même ton, également dans un spoiler (comme doc je te conseille un bon dictionnaire d'anglais :l) tu fais semblant de prendre ça très au sérieux et tu consacres une réponse à ça. :roll:
Comme dirait un plaisantin connu, je n'en dirai pas plus mais je n'en pense pas moins.
Dernière intervention de ma part sur le sujet sauf grosse surprise sur la question initiale.

Re: Mettre en valeur le prompt du terminal

Posté : lun. 17 déc. 2018 16:09
par tyrry
Slt ,
si tu n'as pas de .bashrc , il suffit de le créer ;)
mais as tu simplement fait : ctrl+h dans ton explorateur (caja) ? = (afficher les fichiers cachés)
@+

Re: Mettre en valeur le prompt du terminal

Posté : mar. 18 déc. 2018 00:12
par Christian_B
Merci tyrry mais tu as lu un peu vite les échanges précédents.
Evidemment j'avais regardé les fichiers cachés, d'ailleurs je disais plus haut que j'avais un .bash_history.
J'ai appliqué tout de suite la solution d'arghlub pour mon identifiant et précisé que j'avais créé le .bashrc.

Le problème compliqué ne concernait plus ensuite que l'aspect du prompt sous su ou su -, et donc le comportement du .bashrc de root
En fait je me suis mal exprimé dans la dernière réponse je voulais dire que je n'avais pas de .bashrc au moment où j'ai posé le problème. Je répondais à arghlub qui "commentait" la situation initiale.