IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

modification PS1 caractères spéciaux


Sujet :

Shell et commandes GNU

  1. #1
    storm_2000
    Invité(e)
    Par défaut modification PS1 caractères spéciaux
    Bonjour, je viens vers vous afin de personnaliser mon shell car j'ai un petit problème.
    Pour le moment j'ai:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     export PS1='<\[\e[01;36m\]\t \[\e[01;32m\]\u\[\e[01;33m\]@\[\e[01;37m\]\h\n<\[\e[01;34m\]\w\[\e[01;33m\]\$\[\e[0m\] '
    j'aimerais, relier mes deux '<' par les caractères ASCII (218 et 192) ou autres caractères proches mais comment faire ?

    Après quelques recherches, je viens de tomber sur l'un des premiers caractères:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo -e '\[\e(0\]m\[\e(B\]'
    cependant, je ne comprends pas le bout de code. Si quelqu'un peut me donner un lien l'expliquant ainsi que les autres caractères

    d'avance merci.
    Dernière modification par al1_24 ; 31/05/2011 à 22h57.

  2. #2
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    c'est les caractères de contrôle pour les changements de couleurs.

    là concrètement ça fait un prompt coloré tel que :
    <heure_en_cyan user_en_vert@en_jaunehostname_en_blanc
    <_en_blancpath_en_vert$_en_jaune :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <22:18:56 francois@trillian
    <~$

  3. #3
    storm_2000
    Invité(e)
    Par défaut
    j'ai très bien compris le premier shell. mon problème concerne le second avec par exemple le code suivant:
    echo -e '\[\e(0\]m\[\e(B\]'

    qui ne change pas les couleurs mais permet de rajouter le caractère └ sur l'écran

  4. #4
    Membre très actif

    Homme Profil pro
    Responsable projets techniques
    Inscrit en
    Février 2003
    Messages
    980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable projets techniques
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2003
    Messages : 980
    Par défaut
    Ben ajoute le code dans le PS1 ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    export PS1='<\[\e[01;36m\]\t \[\e[01;32m\]\u\[\e[01;33m\]@\[\e[01;37m\]\h\n\[\e(0\]m\[\e(B\]<\[\e[01;34m\]\w\[\e[01;33m\]\$\[\e[0m\] '
    Edit: pour l'explication, voir les liens de frp31 sur la personnalisation du prompt

    en gros, \e... permette d'utiliser un code qui sera interprété par le shell pour afficher un caractère spécial, une couleur, etc...

  5. #5
    storm_2000
    Invité(e)
    Par défaut
    Je viens de parcourir une fois encore les liens. Je comprends très bien pour les couleurs mais dans aucun des liens nous avons une section sur les caractères spéciaux.
    Où puis-je trouver un lien avec l'ensemble des caractères spéciaux du type: \[\e(0\]m\[\e(B\]

  6. #6
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    tout caractères de la table ascii étendu, caractères pseudo-graphiques et autres peuvent être appelé par l'escape-séquence ALTGR+SON_NUMERO et bha là c'est la version scriptable de cet effet.

  7. #7
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    1 946
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 946
    Par défaut
    Salut,

    Citation Envoyé par storm_2000 Voir le message
    Où puis-je trouver un lien avec l'ensemble des caractères spéciaux du type: \[\e(0\]m\[\e(B\]
    Voir peut être ANSI Escape sequences et/ou ANSI Escape sequences - VT100 / VT52


  8. #8
    Membre expérimenté Avatar de FRUiT
    Homme Profil pro
    Inscrit en
    Février 2011
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2011
    Messages : 83
    Par défaut
    C'est parce parce que en fait là c'est écrit pour la variable PS1 (protégé par des crochets) :
    En réalité la vraie séquence est :
    C'est à dire ton caractère spécial en séquence d'échappements (voir les liens de zipe31)

    Il faut protéger le tout avec des crochets dans la variable PS1 :
    Et il faut échapper les crochets sinon ça provoque des bugs d'affichage.

Discussions similaires

  1. [AC-2010] Caractère spéciaux et modification d'enregistrement
    Par myrddin99 dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 25/06/2012, 04h07
  2. Où trouver la liste des caractères spéciaux?
    Par gamez dans le forum Langage
    Réponses: 3
    Dernier message: 19/08/2003, 17h54
  3. Transformation XSL et caractères spéciaux
    Par Sylvain Leray dans le forum XMLRAD
    Réponses: 4
    Dernier message: 28/04/2003, 10h38
  4. [Sybase] filtre sur caractères spéciaux
    Par montelieri dans le forum Sybase
    Réponses: 4
    Dernier message: 07/04/2003, 16h49
  5. Traiter les caractères spéciaux
    Par ricola dans le forum Langage
    Réponses: 2
    Dernier message: 20/02/2003, 09h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo