17/02/2004 introduction à unix/linux pierre tufféry equipe de bioinformatique et génomique...

45
17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 [email protected] adapted from [email protected] adapted from [email protected]

Upload: tristram-dupre

Post on 03-Apr-2015

104 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Introduction à Unix/Linux

Pierre TufféryEquipe de Bioinformatique et Génomique

MoléculaireUniversité Paris 7

[email protected] from [email protected] from [email protected]

Page 2: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

PLAN

1. Introduction

2. Première session3. Gestion et manipulation des fichiers4. Quelques outils Unix courants5. Fichiers et flux6. Archivage des données7. Gestion des processus8. Quelques bases d'Unix avancé

Page 3: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

PLAN

1. Introduction• système d'exploitation • caractéristiques et fonctionnement d'UNIX• historique d'UNIX

2. Commandes de base3. Gestion et manipulation des fichiers4. Quelques outils Unix courants5. Fichiers et flux6. Archivage des données7. Gestion des processus8. Quelques bases d'Unix avancé

Page 4: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Système d'exploitation

• Définition : programme assurant la gestion de l'ordinateur et de ses périphériques. Il sert d'interface entre l'utilisateur et le matériel.Rq : on utilise souvent le sigle OS pour "Operating System"

• Exemple : Windows, Unix, Mac OS, Be OS, MS-DOS…

MatérielSystème

d'exploitation

Utilisateur(s)

Page 5: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Caractéristiques d'UNIX

• UNIX est un Système d'exploitation :– multi-utilisateurs– multi-tâches– multi-plate-formes (c'est-à-dire portable) : IBM, SUN, HP, IRIX

(Silicon Graphics)… et maintenant sur PC avec Linux, mais aussi caché dans MacOS X

– qui gère la répartition des ressources (mémoire et espace disque)

– orienté réseau (e.g. partage de fichiers sur une machine distante : NFS…)

– très utilisé en développement et en recherche (le développement d'applications y est SIMPLE

– très stable– Devient d'utilisation simple pour tous

Page 6: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Historique d'UNIX

LINUX

première version d'UNIX développée par Ken Thompson

BSD pour Berkeley Software Design

Page 7: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Fonctionnenent de base d'UNIX

Matériel

Noyau

Shell

Utilisateurs

= Processeur, mémoire, disque dur, lecteur de CDROM, écran, clavier…

le noyau UNIX est chargé en mémoire lors du démarrage de l'ordinateur; il alloue les ressources mémoire et processeur, gère le stockage des fichiers…

Unix est un système d'exploitation qui fonctionne par couches (ici seule une petite partie vous en est montrée) :

syst

èm

e

UN

IX

le shell envoie des appels au noyau en fonction des requêtes de(s) (l')utilisateurs

Page 8: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Fonctionnenent de base d'UNIX (2)

Page 9: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

PLAN

1. Introduction2. Première session

• gestion des utilisateurs• se connecter• notion de shell Unix• quelques commandes de base

3. Gestion et manipulation des fichiers4. Quelques outils Unix courants5. Fichiers et flux6. Archivage des données7. Gestion des processus8. Quelques bases d'Unix avancé

Page 10: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Les Utilisateurs

• Unix est multi-utilisateurs➔ nécessité d'avoir un nom particulier aux yeux du système

("login") ainsi qu'un mot de passe pour la sécurité

• 2 types d'utilisateurs– l'utilisateur "root" : super utilisateur -> possède tous les droits

sur la machine– les autres utilisateurs (possèdent des droits restreints)

• Chaque utilisateur est caractérisé par :– un nom ("login") et un numéro d'utilisateur ("UID")– un groupe et un numéro de groupe ("GID")– un mot de passe ("passwd")– un type de shell (= intérpréteur de commandes)– un répertoire utilisateur qui lui appartient ("home directory")(Rq : toutes ces informations sont stockées dans le fichier

/etc/passwd)

Page 11: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Première Connexion

Saisie du nom d'utilisateursaisie du mot de passe

type de session X (KDE ou gnome)

Page 12: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Mot de passe

• le mot de passe est personnel :– ne pas le divulguer– éviter les mots de passe triviaux (e.g. votre

nom…)– utiliser des lettres (majuscules et/ou minuscules)

et des chiffres (éventuellement des caractères spéciaux)

– doit faire 8 lettres au minimum

Page 13: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

L'environnement X-Windows

On arrive sous l'environnement X-Windows (KDE ou gnome = interface graphique rendant l'interaction avec le système plus conviviale) :

ouverture d'un shell

bouton de menu

icône

barre de tâches

bureau

(permet le

multi-fenêtrage)

Page 14: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Déconnexion de la session X-Windows

Nécessité de se déconnecter à la fin d'une session (pour des raisons de sécurité)

• click droit sur "le bureau"

• dans la barre de menu "logout"

Page 15: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Notion de shell

• Le shell est un programme qui va faire le lien entre le noyau UNIX et l'utilisateur

= interpréteur de commandes interactif

invite ("prompt")

le shell est prêt à recevoir des commandes rentrées au

clavier

Page 16: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Notion de shell (2)

• Ouverture du shell (sous X Window) :– cliquer sur l'icône représentant le shell, ou

sélectionner «ouvrir un terminal» dans le menu droit de la souris

• A ce point le shell peut recevoir des commandes :– exemples :

date : affiche la datels : liste les fichiers du répertoire courant

• Fermeture du shell :– commande exit– commande logout– Ctrl-D

Page 17: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Syntaxe générale des commandes UNIX

• syntaxe générale : commande options arguments

exemple : ls -al– les options (souvent très nombreuses) permettent de

modifier le comportement de la commande; en général elles sont précédées du signe '-' (e.g. ls -l)

– certaines commandes utilisent des arguments (e.g. nom de fichier)

– Il y a un manuel en ligne: man ls

• IMPORTANT : – Unix est sensible à la casse ( a != A): ls != LS ou

de Ls– Unix utilise l'espace comme séparateur de commandes

(e.g. utiliser man date et non mandate)

Page 18: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Quelques commandes de base

• more fichier : affiche le contenu de fichier page par page– utiliser la touche espace pour passer à la page suivante– utiliser la touche b pour revenir à la page précédente– utiliser la touche q pour quitter

• ls : affiche la liste des fichiers• cd : change de répertoire• rm : supprime un fichier• vi : édite un fichier• man commande : affiche les pages de manuel de commande (utilise les mêmes touches que more pour se déplacer le long des pages)

• date : affiche la date• slogin : connexion sécurisée à une autre machine

Page 19: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

PLAN

1. Introduction2. Première session3. Gestion et manipulation des fichiers

• généralités• arborescence / références absolues et relatives• manipulation des fichiers• droits des fichiers• caractères spéciaux

4. Quelques outils Unix courants5. Fichiers et flux6. Archivage des données7. Gestion des processus8. Quelques bases d'Unix avancé

Page 20: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Système de fichier

• En UNIX, tout est fichier :– les fichiers dits normaux

• fichiers textes (suite de caractères ASCII = caractères lisibles)

• fichiers éxécutables (suite de caractères binaires, compréhensibles uniquement par l'ordinateur, en général il s'agit des programmes)

– les répertoires (peuvent contenir d'autres fichiers ou d'autres répertoires)

– les fichiers de périphériques

• Chaque fichier possède un "i-node" : moyen pour Unix de stocker les caractéristiques du fichier (emplacement, nom du propriétaire, droits, taille, date de

création et de dernière modification)

Page 21: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

L'arborescence Unix

/

dev etc home usr var

DESS formation

softs maitre2

bin

bin local

prot1passwd

ce_linux.tar.gz

ls

racine (référence absolue)

monprog.c

répertoires

biology

rasmol

fichiers

Page 22: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Chemin d'accès : référence absolue et relative

• Notion de chemin d'accès :– Pour identifier un fichier : suite de noms étiquetant les arêtes

le long de l'arborescence.– racine absolue : /– / sert aussi de séparation entre sous-répertoires.

• Référence absolue = chemin d'accès ("pathname") depuis la racine (permettant le répérage sans ambiguïté)e.g. : /home/prot1/formation/softs

• Référence relative : – Selon l'endroit où l'on se situe ( répertoire de travail = working

directory), répérer un fichier peut s'effectuer de manière relative.

e.g. : ../../DESS• Chaque répertoire a au moins deux liens physiques :

– lien noté . caractérisant le répertoire lui-même– lien noté .. caractérisant le répertoire « père »

Page 23: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Déplacement dans l'arborescence

• pwd : affiche le répertoire courant (print working directory)• cd chemin : déplacement vers le répertoire indiqué par

chemin (change directory)– chemin peut être :

• une référence absolue : e.g. cd /usr/local/biology• une référence relative: e.g. cd ../../DESS

– si chemin est omis, ramène dans le répertoire utilisateur "home directory"

– caractère spécial : ~ désigne le "home directory"e.g. : pour l'utilisateur maitre1 cd ~/test est équivalent à cd /home/threose/maitrise/maitre1/test

– ~user : désigne le "home directory" de l'utilisateur usere.g : cd ~maitre10 amène dans le "home directory" de

l'utilisateur maitre10

Page 24: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Liste du contenu des répertoires

• ls options :– -l : liste des fichiers avec leurs caractéristiques

détaillées excepté ceux commençant par un .– -F : liste des fichiers avec un symbole selon certaines

caractéristiques : • / pour un répertoire• * si le fichier est executable• @ si le fichier est un lien symbolique

– -a : tous les fichiers même ceux précédés par un point . (=fichiers cachés)

– -R : liste le contenu du répertoire du courant et le contenu de tous les sous-répertoires.

– -t : liste par ordre chronologique– -s : liste la taille des fichiers

Page 25: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Création / Destruction de répertoires

• mkdir my_new_dir : création d'un nouveau répertoire my_new_dir

• rmdir my_new_dir : destruction du répertoire my_new_diroption -r : destruction récursive (càd de tout les

fichiers et sous-répertoires; à utiliser avec attention !)

Page 26: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Manipulations de fichiers

• copie de fichiers : cp source destination – 1er cas : si destination est un fichier

e.g : cp fichier1 fichier2 : effectue une copie de fichier1 en un nouveau fichier appelé fichier2

option -i : si fichier2 existe, le shell demande confirmation avant l'écrasement

– 2ème cas : si destination est un répertoire cp fichier1 repertoire : effectue une copie de fichier1

dans le répertoire repertoire cp fichier1 fichier2 repertoire : effectue une copie de fichier1 et fichier2 dans le répertoire repertoire

option –i : demande confirmation d'écrasement si le (ou l'un des) fichier(s) existe(nt) dans le répertoire de destination

Page 27: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Manipulations de fichiers (2)

• destruction de fichiers :– rm fichier1 : destruction du fichier fichier1– rm fichier1 fichier2 : destruction des fichiers fichier1 et fichier2

– option -i : demande confirmation avant la destruction• renommer un fichier :

– mv fichier1 fichier2 : renomme fichier1 en fichier2

– option -i : si fichier2 existe déjà, demande confirmation avant écrasement

• déplacement d'un fichier :– mv fichier1 repertoire : déplace fichier1 dans le

répertoire repertoire– supporte également l'option -i

Page 28: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Droits d'accès aux fichiers

• 3 types d'opération : – lire (r) : on peut lire le contenu du fichier (ou le

répertoire)– écrire (w) : on peut modifier ou détruire le fichier (ou le

répertoire)– exécuter (x) : on peut éxécuter le fichier (en général, il

s'agit des programmes ou scritps); pour un répertoire, cela signifie que l'on peut s'y déplacer

• 3 types d'utilisateur :– propriétaire (u) : l'utilisateur lui-même (e.g. maitre1)– groupe (g) : les utilisateurs font partie de groupe (e.g. maitrise)

– le reste du monde (o) : tout autre utilisateur

Page 29: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Droits d'accès aux fichiers (2)

• la commande ls -l : renseigne sur les caractéristiques d'un fichier (i-node)

type de

fichierdroits

nombre de

liens physiq

ues

utilisateur

propriétaire

groupe propriéta

ire

taille

date de dernière modifica

tion

nom

Page 30: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Droits d'accès aux fichiers (3)

• Sortie de ls -l :invite$ ls -l-rwxr-xr-x ... user group ... monscript.csh-rw-r--r-- ... user group ... toto

droits de

l'utilisateur

propriétaire

droits de

l'utilisateur

propriétaire

droits du reste

du monde

- : l'utilisateur n'a pas le droit correspondant

r, w ou x : l'utilisateur possède le droit

Page 31: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Changer les droits d'accès aux fichiers

commande chmod : modifie les droits d'accès syntaxesyntaxe : chmod droits fichier– les droits peuvent être décrits de 2 manières

• par une combinaison de 3 chiffres :– chaque chiffre correspond dans l'ordre à l'utilisateur, le groupe et le

reste du monde– à chaque droit correspond une valeur : (r -> 4, w -> 2, x-> 1)– on utilise la somme des droits que l'on veut affecter (0 signifie aucun

droit)e.g. : chmod 644 fichier -> -rw-r--r-- ... fichier

chmod 750 fichier -> -rwxr-x--- ... fichier• par une combinaison de lettres désignant les individus

concernés (r, g ou o) ainsi qu'une autre combinaison de lettres désignant les droits que l'on veut affecter (précédées du signe +) ou retirer (précédées du signe -)

e.g. : chmod +x fichier -> affecte le droit x à u, g et ochmod ugo+rw fichier -> affecte les droits rw à u, g et

ochmod o-x fichier -> retire le droit x à o

Page 32: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Caractères Spéciaux et noms de fichiers

• Caractères spéciaux Unix :– * (joker) : remplace n'importe quelle chaîne de

caractères • ls *.txt : désigne tous les fichiers se terminant par

l'extension .txt• ls results* : désigne tous les fichiers commençant par results

• ls ~/test/* : désigne tous les fichiers du répertoire test– ? : remplace n'importe quel caractère

• ls results?.dat : désigne tous les fichiers commençant par results suivis d'un caractère quelconque et se terminant par .dat

– ! : rappel une commande dans l'historique (cf commande history)

• Noms de fichiers :– 255 caractères maximum– éviter les espaces et les caractères spéciaux (* ? ! $ < > & \ / " ' ` ; etc…)

Page 33: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

PLAN

1. Introduction2. Première session3. Gestion et manipulation des fichiers4. Quelques outils Unix courants

• les éditeurs de texte• les outils Internet• les outils de développement

5. Fichiers et flux6. Archivage des données7. Gestion des processus8. Quelques bases d'Unix avancé

Page 34: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Quelques outils Unix courants

• Les éditeurs de texte– nedit (le plus simple, bien pour commencer)– emacs (très puissant, mais complexe au départ)– vi (très spartiate, mais permet de travailler en mode

terminal)• Navigateur Internet (et Messagerie)

– mozilla / firefox (sur la plupart des distributions LINUX, mais aussi Windows, macOS, ...)

– konqueror (spécifique à KDE)• Outils de développement :

– compilateurs• gcc : compilateur C• f77 : compilateur Fortran

– Langages de programmation• python• perl

etc…

Page 35: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

PLAN

1. Introduction

2. Première session3. Gestion et manipulation des fichiers4. Quelques outils Unix courants5. Fichiers et flux

• définition des 3 flux courants• redirection des flux

6. Archivage des données7. Gestion des processus8. Quelques bases d'Unix avancé

Page 36: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Les flux (entrée et sortie standard)

Les flux désignent les flux de données qui rentrent et qui sortent des processus (ou programmes) :

• entrée standard (stdin) : clavier• sortie standard (stdout) : écran• sortie d'erreur (stderr) : écrane.g. : la commande cat sans argument lit en entrée stdin et

génère sa sortie sur stdout : commande cat sans argument

bonjour est saisi au clavier (stdin)bonjour est affiché sur l'écran (stdout)

on presse Ctrl-D pour quitter cat

Page 37: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Redirection des flux

Il est possible de rediriger les flux (en général vers ou depuis un fichier) :

• < : redirection de l'entrée standard• > : redirection de la sortie standard• >> : redirection de la sortie standard à la fin d'un

fichiere.g. :

ls -l /etc > toto : redirection de stdout dans le fichier toto (si toto existe, il est écrasé)ls -l /bin >> toto : redirection de stdout à la fin du fichier toto (le fichier toto n'est pas écrasé)cat < toto : redirection de l'entrée standard depuis le fichier toto

Page 38: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Quelques commandes de filtres

• head fichier : affiche les premières lignes de fichier

• tail fichier : affiche les dernières lignes de fichier

• grep expression fichier : renvoie toutes les lignes de fichier contenant expression

• sort fichier : tri chaque ligne de fichier• wc -l fichier : renvoie le nombre de lignes de fichier (option -c : nombre de caractères, option -w : nombre de mots)

Page 39: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Redirection des flux (2)

• | : le pipe (tube) permet de connecter la stdout d'une commande avec la stdin d'une autre commande

syntaxe : commande1 | commande2ls -l | sort : renvoie la liste des fichiers triéels -l /etc | grep csh : renvoie tous les lignes de la sortie de la commande ls contenant l'expression csh

Rq : la 2ème commande n'a pas besoin d'argumentRq2 : on peut connecter autant de commandes que

l'on veut : ls -l /etc | grep csh | sort

Page 40: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

PLAN

1. Introduction

2. Première session3. Gestion et manipulation des fichiers4. Quelques outils Unix courants5. Fichiers et flux6. Archivage des données7. Gestion des processus8. Quelques bases d'Unix avancé

Page 41: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Archivage et compression de données

• Archivage :– tar -cvf archive.tar fichier1 fichier2 : crée une

archive contenant fichier1 et fichier2– tar -xvf archive.tar : désarchive archive.tar– tar -tvf archive.tar : renvoie le contenu de archive.tar

• Compression– gzip fichier : compresse fichier et ajoute une

extension .gz (opération inverse : gunzip fichier)– compress fichier : compresse fichier et ajoute une

extension .Z (opération inverse : uncompress fichier)– zip archive.zip fichier1 fichier2 : crée une archive

compressée contenant fichier1 et fichier2 (même type de compression que winzip)

– unzip archive.zip : décompresse et désarchive archive.zip

Page 42: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

PLAN

1. Introduction

2. Première session3. Gestion et manipulation des fichiers4. Quelques outils Unix courants5. Fichiers et flux6. Archivage des données7. Gestion des processus8. Quelques bases d'Unix avancé

Page 43: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Gestion des processus

• Processus = suite plus ou moins longue d'instructions exécutables par un ordinateur (typiquement un programme)

• Unix = système multi-tâches-> Unix peut gérer plusieurs processus en même temps

• Quelques commandes de gestion des processus :– top et ps : permettent de visualiser les processus qui sont en

exécution– kill : permet de tuer un processus

• Notion d'avant-plan et d'arrière-plan :– avant-plan : on a pas la main dans le shell (par défaut quand

on lance une commande)– arrière-plan : on récupère la main dans le shell alors que le

processus tourne– pour lancer une commande en arrière-plan : commande &

Page 44: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

PLAN

1. Introduction

2. Première session3. Gestion et manipulation des fichiers4. Quelques outils Unix courants5. Fichiers et flux6. Archivage des données7. Gestion des processus8. Quelques bases d'Unix avancé

Page 45: 17/02/2004 Introduction à Unix/Linux Pierre Tufféry Equipe de Bioinformatique et Génomique Moléculaire Université Paris 7 tuffery@ebgm.jussieu.fr adapted

17/02/2004

Quelques bases d'Unix avancé

• Quelques astuces en bash :– alias : permet de créer ses propres commandes :

• alias ll='ls –l' : lorsqu'on tapera la commande ll, elle équivaudra à ls –l

• alias rm='rm –i'' • alias mv='mv –i' • alias cp='cp –i'

– le fichier ~/.bashrc :• contient un certain nombre d'instructions pour configurer son

propre shell• ces instructions sont exécutées à chaque fois qu'on lance un

shell• il existe différents types de shell (sh, bash, tcsh…)• les scripts shells : véritable langage de programmation

● La variable PATH: decrit l'endroit où chercher les programmes• echo $PATH• export PATH=${PATH}:/home/prot1/formation/bin

etc…