Unix : Commandes de base - ASR1 - Systèmes d`exploitation

Transcription

Unix : Commandes de base - ASR1 - Systèmes d`exploitation
Unix : Commandes de base
ASR1 - Systèmes d’exploitation
Semestre 1, année 2011-2012
Département d’informatique
IUT Bordeaux 1
Février 2012
1/1
Objectifs
Connaı̂tre
manipulation des fichiers et répertoires
chemins d’accès relatifs et absolus
commandes générales
développement d’applications
compression, archivage
2/1
Première partie
Syntaxe
3/1
Syntaxe d’une commande
Une ligne de commande (simple) comporte plusieurs éléments
le nom d’une commande
des options, précédées de “-” ou “--”
des paramètres
séparés par des espaces.
Exemple de commande
ls -l /bin
4/1
Métalangage
Exemple
ls [OPTION]... [FICHIER]...
Conventions
éléments littéraux en caractères gras
ls
éléments optionnels entre crochets
[OPTION]
répétition indiquée par “...”
FICHIER...
5/1
Combinaison d’options
Les options courtes (une lettre) peuvent être combinées
Exemple : commandes avec options
ls -a -l -t
ls -alt
6/1
Deuxième partie
Chemins d’accès
7/1
Arborescence
Les données sont enregistrées dans une arborescence de fichiers et
répertoires
8/1
Chemin absolu
Chemin d’accès absolu
Position d’un élément
(fichier/répertoire) en partant de la
racine.
Exemples
Un chemin d’accès absolu
commence par “/” ou “~”
1
/
2
/home
3
/home/billaud
4
/home/billaud/prog.cc
5
~billaud/prog.cc
6
~/prog.cc
9/1
Répertoire courant, chemin relatif
Chemin d’accès relatif : position d’un objet par rapport au
répertoire courant.
Si le répertoire courant est /home/michel
1
2
3
4
5
6
chemin relatif
lettre.txt
ASR1
ASR1/prog.cc
..
../romain/chanson.txt
.
=
=
=
=
=
=
chemin absolu
/home/michel/lettre.txt
/home/michel/ASR1
/home/michel/ASR1/prog.cc
/home
/home/romain/chanson.txt
/home/michel
10 / 1
Exercice chemins relatifs
Donnez les chemins
d’accès relatifs pour
premier.cc
gdupont
Seance1
11 / 1
Notations “joker”
Les jokers (wildcard)
permettent de désigner plusieurs fichiers.
? : un caractère
* : une chaı̂ne de caractères
[x-y] : un caractère dans un intervalle
Exemples
1
cp Musique/*.mp3 .
2
cp dscn1[0-4]??.jpg
~/Photos
12 / 1
Troisième partie
Commandes générales
13 / 1
ls : list names
Commande
ls [OPTION]... [FICHIER]...
liste les informations sur les fichiers indiqués (par défaut, le
répertoire courant)
Quelques options
-l format long
-a “all”, avec fichiers “cachés” commence par un point.
-t tri par date
-d informations d’un répertoire
14 / 1
Exemples
Exemples
1
ls /bin
2
ls -la
3
ls -l *.cc
4
ls -l Projet/
5
ls -ld Projet/
15 / 1
Pratique “ls”
Essayez
Ouvrez une fenêtre “terminal”, et tapez les commandes
1
ls
2
ls -a
3
ls -l
4
ls -la
5
ls Desktop
6
ls /tmp ; à qui appartiennent les fichiers/répertoires ?
16 / 1
Interprétation “ls -l”
Exemple : $ ls -l /tmp
total 48
drwx------ 3 billaud profs 4096 2008-12-31 08:44 gconfd-billaud
drwx------ 2 root
root 16384 2008-05-12 19:24 lost+found
...
-rw------- 1 billaud profs 2550 2008-12-31 11:41 zmanHHm7H3
Indications
d=répertoire (directory), -=fichier
r=read, w=write, x=execute/cross (droits d’accès)
propriétaire et groupe
taille, date de modification
17 / 1
cd : change directory
Commande
cd [DESTINATION]
change le répertoire courant.
Par défaut, retour au répertoire d’accueil
Exemples
1
cd /tmp
2
cd
3
cd ASR1
4
cd ~/Photos
18 / 1
pwd : print working directory
Commande
pwd
affiche le chemin du répertoire courant.
Exemple
1
pwd
19 / 1
mkdir : make directory
Commande
mkdir [OPTION]... REPERTOIRE...
crée les répertoires
quelques options
-v verbeux
-p crée les répertoires parents si nécessaire
Exemples
1
mkdir ASR1
2
mkdir -p Essais/ASR1/jan08
20 / 1
rmdir : remove directory
Commande
rmdir [OPTION]... RÉPERTOIRE...
supprime les répertoires vides
quelques options
-v verbeux
-p supprime les répertoires parents vides
Exemples
1
rmdir ASR1
2
rmdir -p Essais/ASR1/jan08
21 / 1
cp : copy
Commande
cp [OPTION]... SOURCE... DESTINATION
copie les fichiers/répertoire SOURCE dans la DESTINATION.
quelques options
-v verbeux
-i interactif
-r récursif (copie de répertoires)
Exemples
1
cp exemple.cc programme.cc
2
cp *.cc ~/ARCHIVES
3
cp -rv Projet33 /media/usbdisk1
22 / 1
mv : move
Commande
mv [OPTION]... SOURCE... DESTINATION
déplace les fichiers/répertoire SOURCE dans la
DESTINATION.
quelques options
-v verbeux
-i interactif
Exemples
1
mv monffichier.cc monfichier.cc
2
mv *.mp3 Musique
23 / 1
rm : remove
Commande
rm [OPTION]... FICHIER...
supprime les FICHIERs
quelques options
-v verbeux
-i interactif
-r récursif (pour répertoires)
Exemples
1
rm a.out *~
2
rm -r ARCHIVES
24 / 1
cat : concatenate files
Commande
cat [OPTION]... FICHIER...
concatène les fichiers, affiche leur contenu
quelques options
-n numérote les lignes
-b numérote les lignes non blanches
-s supprime les lignes blanches répétées
Exemples
1
cat programme.cc
25 / 1
less : view files
Commande
less FICHIER+
affiche le contenu d’un fichier, page par page
quelques commandes
ESPACE
b
g nnn
/ chaı̂ne
q
avance d’une page
recule d’une page (back)rr
: va à la ligne nnn
: recherche
quitte
Exemple
1
less programme.cc
Remarque : less est une amélioration de “more”
26 / 1
Pratique mkdir/cp/less
Exercice
1
Créez chez vous un répertoire DOC
2
Copiez-y le répertoire /usr/share/doc/gcc-4.1-base
3
S’y déplacer
4
Regarder la liste des fichiers
5
Consultez README.Bugs
les fichiers compressés (suffixe .gz) peuvent être
6
visualisés par zless
décompressés par gunzip
7
Supprimez DOC/gcc-4.1-base
27 / 1
Impressions
Commande lpr
lpr [OPTIONS]... FICHIER...
imprime un fichier sur l’imprimante par défaut
option utile
-Pimprimante
Commande a2ps
a2ps [OPTIONS]... FICHIER...
convertit un fichier texte en PostScript pour impression
options
-Pimprimante
-ofichier
-n : n=1,2,4,... pages / feuille (par défaut : 2)
28 / 1
Gestion des impressions
lpq / lpstat
cancel, lprm
29 / 1
Documentation
Comment trouver de la documentation ?
la plupart des commandes ont une option -h ou –help
pages de manuel
man commande
apropos sujet
help pour les commandes internes de bash
pages d’information : info sujet
documentation dans /usr/share/doc
sites web, etc
30 / 1
Quatrième partie
Compression/Archivage
31 / 1
Compression
Compression :
changer la représentation des données contenues dans un fichier
pour réduire la taille occupée.
Quelques commandes
Commande
gzip/gunzip
bzip2/bunzip2
compress/uncompress
[OPTIONS]... FICHIER...
[OPTIONS]... FICHIER...
[OPTIONS]... FICHIER...
Suffixe
gz
bz2
Z
Remarques
les fichiers texte se prêtent bien à la compression
la compression sans perte
32 / 1
Compression
Exercice
1
Copiez /usr/share/doc/g++/README.Bugs dans /tmp
2
Compressez-le de différentes façons, comparez les tailles
Commande
(aucune)
gzip
gzip -1
gzip -9
bzip2
Nom
README.Bugs
Taille
%
100%
33 / 1
Compression
Exercice (suite)
Recommencez avec un gros fichier exécutable (par exemple
/usr/bin/emacs.
Conclusions ?
34 / 1
Archivage
Archivage
Objectif : regrouper plusieurs fichiers/répertoires sur un seul
support (fichier, support de sauvegarde...)
Il existe de nombreuses commandes d’archivage
tar (Tape Archiver)
cpio (Copy files in and out)
zip
rar
...
35 / 1
La commande tar
Commande
tar [OPTIONS]... [FICHIERS]...
options principales
-c
-x
-t
-v
-f
: créer une archive
: extraire des fichiers
: liste le contenu
: verbeux
FICHIER : nom du fichier d’archive
Exemple de création d’une archive
tar -cf archives-2008.tar projet1 projet2
36 / 1
tar
Archivage
tar -cvf archives-2008.tar projet1 projet2
Extraction
tar -xf archives-2008.tar
tar -xvf archives-2008.tar projet1/prog.cc
Consultation
tar -tf archives-2008.tar
37 / 1
Archivage et compression
Avec des options spécifiques (-z, -j, ...) on peut utiliser des
archives compressées.
Exemple
tar czf archive-2008.tgz Projet3
Options de compression, noms des archives
sans compression, on utilise le suffixe .tar
option -z pour compression par gzip (suffixe .tgz ou
.tar.gz)
option -j pour compression par bzip2 (suffixe .tar.bz2)
38 / 1
Archivage, exercice
Exercice
1
Créez dans /tmp une archive de votre répertoire d’accueil
2
notez sa taille /tmp
3
Comparez avec des archives compressées
Commande
tar -cf /tmp/archive.tar ~
Taille
%
100 %
39 / 1
Cinquième partie
Développement d’applications
40 / 1
Développement d’applications
Quelques outils
emacs, éditeur de textes
indent, reformatage de textes source
g++, compilateur C++
gcc, compilateur C
make, gestionnaire de dépendances
eclipse, environnement de développement intégré
41 / 1

Documents pareils