La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février 2002 1 Historique Développement dans un laboratoire de recherche Bell (Kernighan, Ritchie,

Présentations similaires


Présentation au sujet: "TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février 2002 1 Historique Développement dans un laboratoire de recherche Bell (Kernighan, Ritchie,"— Transcription de la présentation:

1 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Historique Développement dans un laboratoire de recherche Bell (Kernighan, Ritchie, Thompson) parallèlement au langage C Diffusion gratuite aux universités avec les sources, intégration de UUCP Maturité dUnix (AT & T System V, BSD, Xenix, SunOS, SGI, Cray, HP..) Début de la normalisation : IEE, POSIX, OSF … intégration de TCP/IP et de X windows du MIT Linux

2 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Caractéristiques générales Multi tâches (temps partagé) Multi utilisateurs Organisation arborescente des fichiers Création dynamique de processus (fork) Communication entre processus (pipe) Langage de commandes (shell) Accès généralisé aux périphériques

3 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Description du système Unix Matériel Noyau Shell Interface Graphique Outils SGBD …

4 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Le Shell Les différentes familles de Shell : Bourne Shell (sh), C Shell (csh), Korn Shell (ksh) … Les caractéristiques communes : Définition de variables Redirection des entrées et des sorties Communication par des « pipe» Lancement de programmes en arrière plan Programmation (shell scripts)

5 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Connexion au système Connexion à la machine : login : nicolas password : ????? Déconnexion exit Changement de mot de passe passwd Eviter les mots simples et les prénoms. Faire un mélange Majuscules, minuscules, chiffres & caractères spéciaux (e.g. LaKc2cD!) Les utilisateurs sont rassemblés en groupes

6 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Syntaxe générale Commande daide man Commande option paramètres ls-l/etc Enchaînement des commandes ; Traitement en arrière plan & Redirections Connexion de deux processus |

7 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Commandes de repertoires Notion de chemin relatif et absolu Positionnement et déplacement dans larborescence pwd (print working directory) cd (change directory) Création et destruction de répertoires mkdir (make directory) rmdir (remove directory) Contenu dun répertoire ls (liste) / etc var home moi doc dev

8 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Commandes de fichiers Contenu dun fichier cat, more Renommer un fichier mv Copie dun fichier cp Détruire un fichier rm Lien sur un fichier ln Compression & décompression dun fichier compress uncompress gzip gunzip bzip2 bunzip2 Type dun fichier file Fin du contenu dun fichier tail

9 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Droits sur les fichiers & répertoires Les droits sont de trois types : lecture ( r ) écriture ( w ) exécution ( x ) Ils sont appliqués à trois catégories dutilisateurs Propriétaire du fichier Groupe les Autres rwx rwx rwx Modification des droits dun fichier/répertoire chmod Modification du propriétaire dun fichier /répertoire chown Modification du groupe dun fichier /répertoire chgrp

10 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Autres commandes Heure et date date Calendrier cal Qui est connecté who Traitement du contenu dun fichier Tri dun fichier sort Recherche dans un fichier grep Comptage du contenu dun fichier wc Recherche dun fichier find

11 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Editeur de textes vi Quelques commandes de base (attention aux majuscules/minuscules) Annulation u Insertion i Remplacement d un caractère r Effacement d un caractère x Effacement d une ligne dd Enregistrer :w Quitter :q Quitter & enregistrer :wq Déplacement Gauche h Droite l Haut k Bas j commandesédition vi fonctionne en deux modes ESC Très puissant et toujours disponible quelque soit le terminal, mais totalement déroutant

12 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Les scripts shell Un shell script doit être un fichier exécutable (chmod +x) La première ligne contient #[chemin vers le shell] (e.g. #!/bin/sh) Le # en début de ligne indique un commentaire On peut lui passer des paramètres Un shell script est un fichier qui contient une suite de commandes shell reliées par des instructions de structuration Cest loutil fondamental de Unix qui permet de lier lexécution de « briques » de programmes

13 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Les variables du shell Un nom de variable est une chaîne de caractères sans espaces en général en Majuscules : COUCOU TRUC ESSAI Affectation du contenu en sh COUCOU=Bonjour (Attention pas despace) Accès au contenu dune variable $[nomde la variable] : echo $COUCOU Rôle particulier des quotes pour le shell Pas dévaluation du contenu entre les quotes TRUC=$COUCOU « « Evaluation du contenu entre les quotes TRUC=« $COUCOU » ` ` Double évaluation du contenu entre les quotes $COUCOU=date;TRUC=`$DATE` Quelques variables standard Unix PATH chemins daccès aux programmes HOME répertoire de connexion USER nom dutilisateur MANPATH chemins daccès aux manuels

14 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Les scripts shell Variables spécifiques des shell scripts Paramètres $# nombre de paramètres $* liste des paramètres $0 nom du script $1 $2 … $9 contenu des paramètres Autres $$ numéro du processus $? Valeur de retour du dernier processus #!/bin/sh echo « Je suis le programme $0 » echo « avec $# paramètres »

15 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Les scripts shell : structuration Test et branchement if condition then commande else commande fi #!/bin/sh if test -f monfichier.txt then echo « le fichier existe » fi On teste la valeur de retour dune commande Unix, il en existe une particulière qui sappelle « test » (vérification dexistence de fichier, comparaison …). Elle peut également sécrire [ ] #!/bin/sh if [ -f monfichier.txt ] then echo « le fichier existe » fi

16 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Les scripts shell : structuration Tests et branchements multiples case variable in pattern1) commande ;; pattern2) commande ;; esac #!/bin/sh case $1 in 1) echo « un »;; 2) echo « deux »;; 3) echo « trois »;; esac

17 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Les scripts shell : structuration Boucles for variable in liste do commande done #!/bin/sh for $i in echo $i done while condition do commande done #!/bin/sh i=0 while [ $i -ne "1" ] do read i done

18 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Les scripts shell Calculs Tout comme pour les tests, on utilise une fonction spécifique dévaluation : expr ( attention à lutiliser avec les `` ) Opérateurs dexpression numériques + addition - soustraction \* multiplication / division #!/bin/sh i=0 while [ $i -ne 100 ] do i=`expr $i + 1` echo $i done

19 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Commandes réseau Connexion à distance telnet machine [port] Transfert de fichiers ftp machine Commandes sécurisées ssh machine Test de la présence dune machine sur le réseau ping machine

20 TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février Références URL … B. Kenighan D. Ritchie K.Thompson Publications J.M. Rifflet La programmation sous Unix (Mc Graw Hill) …


Télécharger ppt "TRANSFER Bujumbura – préformation Unix Nicolas Larrousse Février 2002 1 Historique Développement dans un laboratoire de recherche Bell (Kernighan, Ritchie,"

Présentations similaires


Annonces Google