Shell

De system.co.free.fr.
(Différences entre les versions)
Ligne 25 : Ligne 25 :
   \n\n\n\n  toto  \n\n\n
   \n\n\n\n  toto  \n\n\n
et ce n'est pas ce qui est attendu. On prefererais avoir:
et ce n'est pas ce qui est attendu. On prefererais avoir:
-
 
+
<pre>
    
    
    
    
Ligne 31 : Ligne 31 :
    
    
    
    
-
 
+
</pre>
c'est a dire un retour a la ligne ou avec \t une tabulation, ou un caractère spécial avec les autres option commençant par "\" ( \a \b \c\f \n \r \t \v ... )
c'est a dire un retour a la ligne ou avec \t une tabulation, ou un caractère spécial avec les autres option commençant par "\" ( \a \b \c\f \n \r \t \v ... )

Version du 9 septembre 2015 à 14:02

Sommaire

SHELL

Connexion

Le shell de connexion est lancé après la saisie du login et du mot de passe sur la console. C’est celui indiqué à la fin de chaque ligne de /etc/passwd.
Dans ce mode, le shell va tenter d'executer les fichiers dans cet ordre et s'ils sont presents :

  1. /etc/profile
  2. ~/.bash_profile
  3. ~/.bash_login
  4. ~/.profile

À la déconnexion, il tente d’exécuter :

  • ~/.bash_logout

Shell simple

Le shell interactif simple correspond à l’exécution du bash dans une fenêtre (xterm, konsole), une console ou à la main (taper bash dans une console). Dans ce cas seul le fichier suivant sera exécuté s’il existe :

  • ~/.bashrc

Notez que dans beaucoup de distributions Linux, le .bashrc est appelé soit par .bash_profile, soit par /etc/profile, et que la configuration est donc placée dans .bash_profile qui sera alors toujours appelé.

commande echo et nouvelle ligne ( new ligne \n )

Sur les version recentes des Shell en Linux et pour certains autre Unix, la commande

 echo "\n\n\n\n   toto  \n\n\n"

renvoi

 \n\n\n\n   toto  \n\n\n

et ce n'est pas ce qui est attendu. On prefererais avoir:

 
  
  
      toto
  
  

c'est a dire un retour a la ligne ou avec \t une tabulation, ou un caractère spécial avec les autres option commençant par "\" ( \a \b \c\f \n \r \t \v ... )

l'origine est lié au nouvelles versions de la norme POSIX.

printf

POSIX et IEEE recommande d'utiliser <g>printf a la place de echo. La commande printf accepte de nombreuses options. voir man printf

pour bash uniquement: shopt -s xpg_echo

Active

 #shopt -s xpg_echo # Active xpg_echo
 #echo "Hello\nworld"
 Hello
 world

Desactive

 #shopt -u xpg_echo # Desactive xpg_echo
 #echo "Hello\nworld"
 #Hello\nworld
Outils personnels