L'invite par défaut contient donc \u@\h:\w\$
syntaxe | description |
---|---|
\u | nom de l'utilisateur |
\h | nom de la machine |
\w | le chemin de travail… où vous êtes |
Dans ton .... .bashrc
sudo emacs ~/.bashrc
Si on a apporté des modifications au fichier on peut le recharger sans avoir à fermer le terminal
source ~/.bashrc
nom de la colonne | explication |
---|---|
uid | Propriétaire du processus |
pid | Numéro du processus |
ppid | Père du processus |
C | Utilisation CPU |
stime | Temps où le processus à commencer |
tty | Terminal associé au processus |
time | Total de CPU utilisé |
cmd | Nom du processus |
ps
ps -ef
ps -ax
ps -ejH
ps -auxps -x -u <login>
ps -ef | grep nomduprocessus
ps -ef | grep teams
kill <n° pid>
killall <nom du processus>
Le mieux c'est de le tester soit même
./monScript.sh
Attention : il faut rajouter les droits d'exécution au fichier (chmod +x monScript.sh)
sh monSript.sh
bash monSript.sh
# C'est un super commentaireecho "coucou" # ici j'affiche la chaîne de caractère coucou
Attention :
maChaine="coucou"
monEntier="coucou"
maCommande=`ls -l`
Attention Pour utiliser une variable il faut utiliser le $
maChaine="coucou"echo $maChainemonEntier=4echo $monEntiermaCommande=`ls -l`echo $maCommande
a=4b=5echo "solution1 : " $(($a+$b))let "c=$a+$b"echo "solution 2 : " $c
Attention : pour utiliser let, il faut obligatoirement utiliser la compilation ./script.sh
Les différentes opérations :
read xecho "l'utilisateur a rentré $x"
ls -l
ls -l | wc -l
echo "ls -l | wc -l"
echo 'ls -l | wc -l'
echo `ls -l | wc -l`
Attention
if conditionthen ...fi
if conditionthen ...else ...fi
if condition1then ...elif condition2then ...else ...fi
Attention : il faut bien utiliser les tabulations à l'intérieur des si
ecriture | signification | équivalence en C |
---|---|---|
[ $x -eq $y ] | $x equal to $y | x==y |
[ $x -ne $y ] | $x not equal $y | x!=y |
[ $x -lt $y ] | $x lower than $y | x<y |
[ $x -le $y ] | $x lower or equal to | x<=y |
[ $x -gt $y ] | $x greater than $y | x>y |
[ $x -ge $y ] | $x greater or equal to $y | x>=y |
Attention
read xecho "l'utilisateur a rentré $x"read yecho "l'utilisateur a rentré $y"if [ $x -lt $y ]then echo "$x est plus petit que $y"else echo "$x est plus grand que $y"fi
i=0while [ $i -lt 5 ] # tant que i lower than 5 (i<5)do echo "coucou" # pour afficher coucou let "i++" # pour incrémenter idone
j=0until [ $j -eq 5 ] # jusqu'à que j equal to 5 (i==5)do echo "coucou" let "j++"done
for fic in *do echo $ficdone
for i in {1..10}do echo $idone
var="hello"case $var in h) echo "1" ;; # traitement si var=a ell|lo) echo "2" ;; # traitement si var = "b" ou "c" h*) echo "3" ;;# traitement si $var commence par "d";; *) echo "null" ;; # traitement par défaut;;esac
Attention
montab=( "case1" "case2" "case3" )
for case in ${montab[*]}do ...done
montab[0]="nouvelle valeur"
montab=( "led" 666 "pj" 42 )for case in ${montab[*]}do echo "case : $case"doneecho " montab : ${montab[*]}"echo " case 0 : ${montab[0]}montab[0]="zep"echo " case 0 : ${montab[0]}"
Vous l'avez déjà fait
wc -l monFichier.csv
wc -l c'est la commande et monFichier.csv est le paramètre
cat monFichier.csv
cat c'est la commande et monFichier.csv est le paramètre
for i in $(seq 0 $#)do echo "le parametre numero $i est ${!i}"done
maVar="algo.c"if [ -x $maVar ]then echo "$maVar est un executable"else echo "$maVar n'est pas un executable"fi
Attention :
maVar="monDossier"if [ ! -d $maVar ]then echo "$maVar n'est pas un dossier"else echo "$maVar est un dossier"fi
maVar="monDossier"if [ ! -d $maVar ]then echo "$maVar n'est pas un dossier je pars" exit 1fiecho "Moi je reste et je continue"echo "... traitement divers ..."exit 0
En tapant dans le terminal echo $? on peut vérifier l'état de sortie du programme
maVar="monDossier"if [ ! -d $maVar ]then echo "$maVar n'est pas un dossier je pars" exit 666fiecho "Moi je reste et je continue"echo "... traitement divers ..."exit 0
maVar="monDossier"if [ ! -d $maVar ]then echo "$maVar n'est pas un dossier je pars" exit 666fiecho "Moi je reste et je continue"echo "... traitement divers ..."exit 0
Keyboard shortcuts
↑, ←, Pg Up, k | Go to previous slide |
↓, →, Pg Dn, Space, j | Go to next slide |
Home | Go to first slide |
End | Go to last slide |
b / m / f | Toggle blackout / mirrored / fullscreen mode |
c | Clone slideshow |
p | Toggle presenter mode |
t | Restart the presentation timer |
?, h | Toggle this help |
Esc | Back to slideshow |