Shell = interpréteur de cmdes
1
xterm Û 1 shell
Cmdes
· cmdes internes : pas de création de
processus
Ex : cd
· cmdes externes : création d'un processus
Ex : ls
· alias
Ex : ll
Configuration du shell
· par des fichiers de
configuration
Ex : en ksh : .profile
· par des variables système
prédéfinies = variables d'environnement
(path = chemin d'accès)
Rq : ces variables sont
toujours des ch. de car
Korn Shell (ksh) = langage du shell
Rq : en shell, par défaut tout
en ch. de car.
* root
définit les alias pour tout le monde
dans
/etc/profile (fichier de
config ksh)
* alias personnels
alias [-x] nom_alias = '……..'
® alias valide dans
l'xterm
Rq : pour un alias valide dans toutes les xterm : mettre
dans .profile
unalias nom_alias
Variables shell
Script = prog. écrit en shell
Variables du
shell = uniqt ch. de car
·
variables
d'environmt : dans l'envt de
l'utilisateur
o variables std
: définies par le système (nom et rôle fixés, en MAJ)
o variables utilisateur
·
variables
locales :
o locales au script
o locales au shell courant
(xterm – mode ligne)
env Þ liste des variables d'envt
set Þ liste des variables locales + var envt
echo
$nom-var Þ affiche le contenu de nom-var
export nom-var Þ exporte la variable dans toute la hiérarchie fille
|
|
|
modifiable ? |
|
HOME |
répertoire de réfce |
oui, mais déconseillé |
|
LOGNAME |
login |
non |
|
USER |
||
|
DISPLAY |
adresse IP (réseau) du TX |
oui |
|
PATH |
chemin d'accès aux
exécutables |
|
|
PS1 |
invite |
|
|
PWD |
répertoire courant |
|
|
SHELL |
nom de l'exécutable shell
lancé |
|
|
TERM |
type de terminal utilisé |
|
|
$ |
dernier n° de processus |
|
|
! |
de n° de ps
lancé en background |
|
|
? |
code retour |
|
nom-var=chaînedecar Þ affecte val à la variable
Attn : pas d'espaces !!
unset
nom-var Þ supprime la variable
let var=chaine Þ var reçoit l'opé arithmétique contenue dans chaine
date Þ donne la date courante
' '
Þ neutralise tous les car
spéciaux
" " Þ neutralise tout sauf "
` \ $
`cde ` Þ déclenche la cde (capture la sortie std)
Processus
ps Þ liste des ps du terminal
ps –u$USER Þ liste des ps de l'utilisateur
ps –oclo1,col2,col3 Þ liste des ps ac les colonnes dans l'ordre
ps –e Þ liste des ps de la machine
|
CTRL-C CTRL-\
kill –9
num_ps kill –KILL
num_ps |
Þ tue le ps |