Commande de base du shell

Introduction sur le shell
Le shell est un langage permettant de communiquer avec l'ordinateur et d'effectuer des opérations : créer des répertoires et des fichiers, lister le contenu des répertoires, lancer la compilation d'un programme ...
Un shell se lance à partir d'un terminal (figure ci-contre à droite)
Dans cette session, nous allons présenter quelques commandes de base. Ces commandes seront nécessaires à l'organisation de nos répertoires et à la compilation de nos programmes.
Notions abordées
- Utilisation d'un terminal
- Les commands de base - mkdir, cd, ls, touch
Création d'un répertoire avec mkdir
Pour créer un répertoire appelé programmation:mkdir programmation
Se déplacer dans un répertoire avec cd
Pour se déplacer dans le répertoire que l'on a crée précédemmentcd programmation
Pour connaître le répertoire dans lequel on se situe on tapepwd
Si on veut remonter d'un répertoire on tapecd ..
Lister les fichiers et les répertoires avec ls
Pour afficher le contenu d'un répertoirels
Créer un fichier avec touch
Pour créer un fichier vide appelé main.ctouch main.c
Lancer un éditeur de texte comme geany
Si on veut éditer le fichier crée précédemment avec un éditeur comme geany on lance la commande suivantegeany main.c &
Le symbole & permet à l'utilisateur de continuer à avoir la main sur le terminal après avoir lancer l'éditeurProgrammation en C
Premier programme
Notions abordées
- Utilisation de la bibliothèque standard (stdio.h)
- La fonction main()
- Le type entier (int)
- Utilisation de printf pour afficher du texte
- Affichage d'une variable de type entier dans printf avec %i
- Formateurs de texte : \t (tabulation) et \n (saut de ligne)
#include <stdio.h> void main() { int a, b; a=10; b=20; printf("bonjour\n"); printf("a=%i \t b=%i\n", a, b); printf("a+b=%i \n", a+b); }Pour compiler le programme, on tape dans le terminal
gcc main.c -o test
En tapant la commande ls, vous devriez voir un exécutable appelé test. Pour l'exécuter on tape:./test
Dans le terminal, on obtient le résultat suivant:
bonjour
a=10 b=20
a+b=30
Deuxième programme en C
Notions abordées
- Le type caractère (char), options de formatage (%i et %c)
- Boucle for
- Code ASCII d'un type char
main2.c
#include <stdio.h> void main() { char a='f'; int i; printf("caractere: %c \n", a); printf("caractere: %i \n", a); printf("caractere: %c \n", 102); for (i=0;i<128;i++) { printf("i=%i \t caractere=%c\n", i, i); } }
Compilation :
gcc main2.c -o test2
Exécution :
./test2
Résultat dans le terminal :
caractere: f
caractere: 102
caractere: f
i=0 caractere=
i=1 caractere=
i=2 caractere=
i=3 caractere=
i=4 caractere=
i=5 caractere=
i=6 caractere=
i=7 caractere=
i=8 caractere=
i=9 caractere=
i=10 caractere=
i=11 caractere=
i=12 caractere=
i=13 caractere=
i=14 caractere=
i=15 caractere=
i=16 caractere=
i=17 caractere=
i=18 caractere=
i=19 caractere=
i=20 caractere=
i=21 caractere=
i=22 caractere=
i=23 caractere=
i=24 caractere=
i=25 caractere=
i=26 caractere=
i=27 caractere=
i=28 caractere=
i=29 caractere=
i=30 caractere=
i=31 caractere=
i=32 caractere=
i=33 caractere=!
i=34 caractere="
i=35 caractere=#
i=36 caractere=$
i=37 caractere=%
i=38 caractere=&
i=39 caractere='
i=40 caractere=(
i=41 caractere=)
i=42 caractere=*
i=43 caractere=+
i=44 caractere=,
i=45 caractere=-
i=46 caractere=.
i=47 caractere=/
i=48 caractere=0
i=49 caractere=1
i=50 caractere=2
i=51 caractere=3
i=52 caractere=4
i=53 caractere=5
i=54 caractere=6
i=55 caractere=7
i=56 caractere=8
i=57 caractere=9
i=58 caractere=:
i=59 caractere=;
i=60 caractere=<
i=61 caractere==
i=62 caractere=>
i=63 caractere=?
i=64 caractere=@
i=65 caractere=A
i=66 caractere=B
i=67 caractere=C
i=68 caractere=D
i=69 caractere=E
i=70 caractere=F
i=71 caractere=G
i=72 caractere=H
i=73 caractere=I
i=74 caractere=J
i=75 caractere=K
i=76 caractere=L
i=77 caractere=M
i=78 caractere=N
i=79 caractere=O
i=80 caractere=P
i=81 caractere=Q
i=82 caractere=R
i=83 caractere=S
i=84 caractere=T
i=85 caractere=U
i=86 caractere=V
i=87 caractere=W
i=88 caractere=X
i=89 caractere=Y
i=90 caractere=Z
i=91 caractere=[
i=92 caractere=\
i=93 caractere=]
i=94 caractere=^
i=95 caractere=_
i=96 caractere=`
i=97 caractere=a
i=98 caractere=b
i=99 caractere=c
i=100 caractere=d
i=101 caractere=e
i=102 caractere=f
i=103 caractere=g
i=104 caractere=h
i=105 caractere=i
i=106 caractere=j
i=107 caractere=k
i=108 caractere=l
i=109 caractere=m
i=110 caractere=n
i=111 caractere=o
i=112 caractere=p
i=113 caractere=q
i=114 caractere=r
i=115 caractere=s
i=116 caractere=t
i=117 caractere=u
i=118 caractere=v
i=119 caractere=w
i=120 caractere=x
i=121 caractere=y
i=122 caractere=z
i=123 caractere={
i=124 caractere=|
i=125 caractere=}
i=126 caractere=~
i=127 caractere=
Les premiers caractères ne s'affichent pas dans le terminal car ils correspondent à des caractères de contrôle (touche Echap, tabulation, Espace, Suppression etc ...)
Troisième programme en C
Notions abordées
- Demander à l'utilisateur de rentrer une valeur avec scanf
- Structure de contrôle if/else pour gérer les conditions
main3.c
#include <stdio.h> void main() { char car; printf("Donner la premiere lettre de votre prenom : \n"); scanf("%c", &car); printf("Valeur : %c\n", car); if ( car == 'a' ) { printf("Tu es trop intelligent\n"); } else { printf("Tu es un gros cretin\n"); } }
Compilation :
gcc main3.c -o test3
Exécution :
./test3
Résultat dans le terminal :
Donner la premiere lettre de votre prenom :
a
Valeur : a
Tu es trop intelligent