Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1067 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [UNIX - SHELL] Définition du prompt en ksh

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[UNIX - SHELL] Définition du prompt en ksh

n°1339026
IsBack
Posté le 04-04-2006 à 17:54:54  profilanswer
 

Bonjour,
 
Dans le fichier .bash_profile, j'ai défini le prompt de cette manière :
 

Code :
  1. export PS1='$PWD>\n'


 

Code :
  1. /home/sybase>
  2. echo "TEST"
  3. TEST
  4. /home/sybase>


 
Le prompt est sur une ligne et la saisie des commandes se fait sur la ligne juste en dessous.
 
Je souhaite faire la même chose en définissant le prompt dans le fichier .profile pour le korn shell mais cela ne fonctionne pas j'ai tenté plusieurs chose mais rien ne marche, auriez vous une idée, merci.  
 

Code :
  1. export PS1='$HOSTNAME:$PWD>\n'


 

Code :
  1. /home/sybase>necho "TEST"
  2. /home/sybase>nTEST


 

mood
Publicité
Posté le 04-04-2006 à 17:54:54  profilanswer
 

n°1339045
olivthill
Posté le 04-04-2006 à 18:24:43  profilanswer
 

Peut-être que $HOSTNAME n'est pas défini ou que le shell n'est pas du korn shell quand il s'agit d'un batch, et qu'il faille rajouter ceci au début :

#!/bin/ksh

n°1339056
IsBack
Posté le 04-04-2006 à 18:48:19  profilanswer
 

Voici le fichier d'initialisation pour le bash
 
.bash_profile

Code :
  1. #!/bin/ksh
  2. #Initialisation Sybase Environement
  3. # /sybase/MUTUQUAL/release/SYBASE.sh
  4. # est un lien vers
  5. # /sybase/MUTUQUAL/release/syb125/SYBASE.sh
  6. # On sauvegarde le Path initiale car SYBASE.sh
  7. # rajoute son chemin en "append", ce qui peut provoquer
  8. # des problemes si on appelle plusieurs fois SYBASE.sh
  9. if [ ${PATH_INITIAL}="" ] ; then
  10.     PATH_INITIAL=${PATH}
  11. else
  12.     PATH=${PATH_INITIAL}
  13. #date
  14. fi
  15. export PATH_INITIAL
  16. export PATH
  17. . /sybase/MUTUQUAL/release/SYBASE.sh
  18. alias is='isql -U$SA -S$SERVEUR -w2000'
  19. alias i="cd $SYBASE/$SYBASE_ASE/install"
  20. alias d="cd /sybase/MUTUQUAL/dump"
  21. . ./MUTUQUAL.ksh
  22. PS1='$PWD>\n'
  23. export PS1
  24. stty erase ^H
  25. alias ls="ls -F"


 
Voici le fichier d'initialisation pour le korn shell
 
.profile

Code :
  1. #!/bin/ksh
  2. #Initialisation Sybase Environement
  3. # /sybase/MUTUQUAL/release/SYBASE.sh
  4. # est un lien vers
  5. # /sybase/MUTUQUAL/release/syb125/SYBASE.sh
  6. # On sauvegarde le Path initiale car SYBASE.sh
  7. # rajoute son chemin en "append", ce qui peut provoquer
  8. # des problemes si on appelle plusieurs fois SYBASE.sh
  9. if [ ${PATH_INITIAL}="" ] ; then
  10.     PATH_INITIAL=${PATH}
  11. else
  12.     PATH=${PATH_INITIAL}
  13. #date
  14. fi
  15. export PATH_INITIAL
  16. export PATH
  17. . /sybase/MUTUQUAL/release/SYBASE.sh
  18. alias is='isql -U$SA -S$SERVEUR -w2000'
  19. alias i="cd $SYBASE/$SYBASE_ASE/install"
  20. alias d="cd /sybase/MUTUQUAL/dump"
  21. . ./MUTUQUAL.ksh
  22. PS1='$PWD>\n'
  23. export PS1
  24. stty erase ^H
  25. alias ls="ls -F"


 

Code :
  1. :/home/sybase>nexec bash
  2. SUNQUAL:/home/sybase>
  3. echo "test"
  4. test
  5. SUNQUAL:/home/sybase>
  6. exec ksh
  7. SUNQUAL:/home/sybase>necho "test"
  8. test
  9. SUNQUAL:/home/sybase>n


 
Comment définir le prompt dans le .profile pour obtenir :  

Code :
  1. exec ksh
  2. SUNQUAL:/home/sybase>
  3. echo "test"
  4. test
  5. SUNQUAL:/home/sybase>

n°1339552
olivthill
Posté le 05-04-2006 à 12:12:32  profilanswer
 

Merci pour tout ce code. Mais, excuse-moi, je ne vois plus très bien quel est le problème. Quelle est la ligne qui pose problème ? Est-ce que l'affichage du chemin marche ? Est-ce que l'affichage du hostname qui ne marche pas ?
 
Quoi qu'il en soit j'avais utilisé ceci qui marchait :

set prompt="`hostname`> "
ou
export PS1='$PWD>'
ou
export PS1="[`whoami`@`hostname`:$PWD]>"


n°1339741
IsBack
Posté le 05-04-2006 à 15:16:25  profilanswer
 

Je souhaite avoir le prompt sur une ligne et le curseur de saisie de commande juste sur la ligne en dessous.
 
En tapant le code ci-dessous dans le .profile j'obtiens ce que je voulais :
 
PS1='$PWD>"
"'
export PS1
 
Merci.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [UNIX - SHELL] Définition du prompt en ksh

 

Sujets relatifs
Petite curiousité sur la definition de As....Faire un script shell sous Unix
novice en programmation doit programmer sous unix.Appel de commande shell unix en java
[PERL] Shell et texte fixeGD lib, plateforme windows et unix
[Shell] Insertion de caractèresOuverture d'un fichier avec commande shell
Plus de sujets relatifs à : [UNIX - SHELL] Définition du prompt en ksh


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR