l2 Documents Système Compte Rendu Tp n4 Commandes de Base de Linux Partie 2

5

Click here to load reader

description

system

Transcript of l2 Documents Système Compte Rendu Tp n4 Commandes de Base de Linux Partie 2

  • Compte rendu du TP n4Commandes de base de Linux (partie 2)

    RAHAL Majda Nafissa - 9/04/2012

    Exercice 3 : 1. On se place dans le home directory grce la commande cd.2. On excute la commande suivante pour rediriger la sortie d'erreur :

    lstiti2>erreur2 tant le code de la sortie pour les messages d'erreur.On affiche le contenu du ficher erreur avec caterreur , on obtient :

    ls:impossibled'accdertiti:Aucunfichieroudossierdecetype

    Ce qui prouve que la sortie a bien t redirige.3. On excute la commande suivante :

    lstiti*2>erreurOn remarque que le listing s'affiche l'cran (sortie standard des rsultats) mais l'erreur toujours dans le fichier erreur. On excute maintenant :

    lstiti*>resultat2>erreurRien ne s'affiche l'cran, par contre en accdant resultat et erreur (grce catresultat et caterreur), on constate que le listing ainsi que le message d'erreur y sont affichs. On a ainsi drout les 2 sorties standards celle des rsultats et celle des erreurs.

    4. On veut rediriger les 2 sorties vers le mme fichier, on procde comme suit :lstiti*2>res_err>>res_err

    Le >> servant concatner le rsultat de la sortie d'erreur celui de la sortie standard.

    5. On cre le fichier manuel comme ceci : manmkdir>manuel

    6. On affiche son contenu l'aide de : catmanuel et c'est bien le manuel de la commande mkdir qui s'affiche.

    7. On copie ceci dans le fichier manuelbis ainsi : catmanuel>manuelbis

    On en dduit que parmi les fonctions de la commande cat on a la copie de fichiers.8. Aprs l'excution de cette commande, manuel ne contient rien (fichier vide) et

    manuelbis contient le manuel de la commande mkdir.Ceci s'explique par le fait que l'on a redirig la sortie de manmkdir vers le fichier manuel, puis on a redirig la sortie de manuel vers manuelbis.La sortie a t doublement redirige d'o l'affichage uniquement dans manuelbis.

    9. On ajoute au fichier manuelbis le manuel de la commande rmdir comme suit :manrmdir>>manuelbis

    10. L'affichage des attributs de manuelbis dans droits se fait grce la commande :lslmanuelbis>droits

    11. Pour afficher les deux fichiers manuelbis et droits en une seule commande, on fait : catmanuelbisdroits

    page 1

  • Ils s'afficheront l'un la suite de l'autre. Ceci montre que cat est aussi utilise pour la concatnation de fichiers.

    12. Pour afficher page par page la liste trie des fichiers du rpertoire, on excute :lsl|sort|more

    sort sert trier les fichiers/rpertoires suivant le critre des droits. La ligne de commandes excute fonctionne de la manire suivante : on trie le rsultat de lsl avec sort (on le donne en entre sort grce au tube), puis on donne cette liste trie en entre more qui sert l'affichage page par page.

    13. On ouvre un autre terminal, on affiche son numro par la commande tty qui donne : /dev/pts/1Pour transfrer le rsultat prcdent sur le 2e terminal, on excute :

    lsl|sort|more>/dev/pts/1Ce qui aura pour effet de rediriger la sortie standard de la commande vers le terminal, qui est caractris par son nom (/dev/pts/1).

    14. On redirige maintenant le rsultat vers /dev/null, rien ne s'affiche l'cran car ce fichier est assimilable un point noir ou une redirection vers le vide. On utilise ce genre de redirection lorsque l'on sait ce que fait un programme et qu'on ne veut pas s'encombrer de son affichage, par exemple.

    Exercice 4 : (Liens)1. Cration d'un fichier test :

    cat>testPremierfichierdetest

    (Ctrl+d pour quitter)Copie du fichier :

    cptesttest1Cration du lien physique :

    lntesttest2Cration du lien symbolique :

    lnstesttest3Le lien physique tant un pointeur vers l'espace disque du fichier test, il permet de donner plusieurs noms un mme fichier sans dcupler l'espace mmoire. Le fichier ne sera alors supprim que lorsque son nombre de liens physiques sera gal 0 (le nombre de liens physiques est le2e argument qui s'affiche lorsqu'on excute lsl).Quant au lien symbolique, c'est un fichier part entire qui contient le chemin vers test, c'est quivalent au raccourci sous Windows.

    2. Comparaison des numros d'inode :On affiche les numros d'inode l'aide de la commande suivante :

    lsitesttest1test2test37866006test7866683test17866006test27866786test3

    On remarque les choses suivantes : test et test2 ont le mme numro d'inode, ce qui prouve bien que c'est le mme fichier avec 2 noms diffrents. test1 et test3 ont quant eux des numros diffrents, ce qui est normal vu que ce sont tous les 2 des fichiers distincts (le 1er tant une copie proprement parler et le 2e un fichier contenant un chemin), ayant des attributs diffrents ce qui explique que leur n d'inode varie de celui de test.

    page 2

  • 3. On supprime test (avec rmtest) puis on affiche le contenu des autres fichiers. On constate que :cattest1 donne Premierfichierdetestcattest2 donne Premierfichierdetestcattest3 donne cat:test3:Aucunfichieroudossierdecetype

    On en conclut que test2 est bien une copie du fichier vu qu'elle nous a permis de sauvegarder son contenu mme aprs avoir supprim le fichier d'origine. test3 en revanche disparat ds lors que test est supprim car il ne contient qu'un chemin vers ce fichier (chemin devenu inexistant aprs la suppression).Sinon, il est normal que test1 reste inchang tant donn que c'est une copie indpendante du fichier test.

    4. On cre un nouveau fichier test l'aide de cat>testDeuximefichierdetestOn affiche de nouveau le contenu des autres fichiers et cela donne :cattest1donnePremierfichierdetestcattest2donnePremierfichierdetestcattest3donneDeuximefichierdetest

    Pour test1, c'est prvisible vu que le fichier est indpendant de test.C'est ici que l'on voit bien que test2 est un lien physique sur test (le premier), il n'est donc pas altr par la cration de ce nouveau fichier, et c'est l tout l'intrt du lien physique.test3 contient le chemin vers test et comme celui-ci (le chemin) n'a pas chang, test3 renvoie maintenant le contenu du nouveau fichier test.

    Exercice 5 : (Recherche)

    1. Cration des fichiers demands :touchannee1Annee2annee4annee45annee410annee510annee_lunaire

    2. Cration des rpertoires demands et dplacement des fichiers dans Ans :mkdirAnsNouvelAnsmvannee1Annee2annee4annee45annee410annee510annee_lunaireAns

    Notons que Ans reprsente ici le rpertoire de destination des fichiers (sachant que l'on se trouve dans le home directory).

    3. Listes spcifiques de fichiers :- se terminant par 5 : lsl*5- commenant par annee4 : lslannee4*- commenant par annee4 et de 7 lettres max : lslannee4{,?}- commenant par annee avec aucun chiffre : lslannee*[!09]

    page 3

  • - contenant la chaine una : lsl*una*- commenant par a ou A : lsl[aA]*

    Explications : On introduit ici la notion de wildcard ou joker , ce sont des caractres qui permettent d'en remplacer d'autres. Ils sont trs utiles et trs utiliss pour la recherche. Nous avons les wildcard suivants :* quelque soit(ent) le(s) caractre(s)? pour tous les caractres, au nombre des points d'interrogation[ ] pour un seul caractre (ex. pour [abc] a sera soit a, soit b, soit c). Si on veut que le caractre soit pris sur un intervalle, on spare les 2 extrmits par un tiret - . Si on veut exclure un caractre, on utilise le ! { } ont le mme rle que les crochets mais permettent de rechercher plusieurs caractres (une chane). Exemple : lsl*.{pdf,doc}

    Exercice 5 : Archivage et Compression

    Archivage : La commande tar nous permet d'archiver une (sous-)arborescence, ce qui veut dire runir plusieurs fichiers pour les stocker dans un fichier unique.Notons que l'archivage conserve la mme taille des fichiers (ce n'est pas une compression).

    1. On cre une archive TPSYS.rar du rpertoire TPSYS l'aide de la commande suivante :

    tarcvfTPSYS.tarTPSYSc pour create, qui veut dire qu'on va crer l'archive. v pour verbose, c'est--dire la description des tapes de l'archivage.f pour file, qui indique que l'on va crer un fichier d'archive.

    2. On cre un rpertoire Archive et on y place TPSYS.tar comme suit :mkdirArchivemvTPSYS.tarArchive

    3. Maintenant, on dsarchive le fichier avec la commande :tarxvfArchive/TPSYS.tarCArchive

    Ce qui aura pour effet de crer un rpertoire TPSYS dans Archive. Notons que Cest une option de la commande tar qui nous permet de changer de rpertoire d'extraction ou d'archivage.

    Compression : 4. Crons maintenant une archive compresse du rpertoire TPSYS, et ce en

    excutant la commande :tarczfTPSYS.tar.gzTPSYS

    z voulant dire gzip, un format de compression.Observons que la compression rduit la taille de l'ensemble des fichiers et nous aide donc gagner de l'espace mmoire.

    5. Pour trouver tous les fichiers se terminant par .c et les compresser, on procde ainsi :Si on veut chercher uniquement dans le rpertoire courant :

    tarczfRep.tar.gz*.cSi on veut chercher dans tous les rpertoires sans exception :

    page 4

  • findname"*.c"typefexectarcfRep.tar{}+

    L'option name sert indiquer le nom des fichiers chercher ; type indique le type de document (f pour fichier) ;

    exec associe {}+ sert rcuprer les fichiers partir de ce qu'on a trouv dans name"*.c"typef

    On obtient ainsi une archive contenant tous les fichiers sur l'ordinateur dont le nom se termine par .c.

    page 5