Premières applications utilisateurs


Objectifs

A l'issue de ce TP vous montrerez que vous êtes capable :

Présentation

Le but de ce TP est de mettre en oeuvre les commandes de base pour effectuer des micros applications utiles pour un utilisateur. Vous allez tout d'abord manipuler des éditeurs de texte en mode console sans interface. Dans un deuxième temps, vous allez apprendre à sauvegarder, archiver et restaurer des fichiers. Enfin, vous implémenterez une poubelle intelligente.

 Vous rédigerez un compte rendu dans lequel vous justifierez les options des commandes que vous avez utilisé pour réaliser les actions demandées et repérées par =>.

Outils

 Rappel : Les contenus des cours, des TD et des TP précédents sont nécessaires pour faire les TP. Vous devez impérativement les avoir avec vous et les connaitre pour chaque séance de TP (et avoir revu les TP précédents).

1 machine sous LINUX

Travail Demandé 


1. Traitement du texte en mode texte

vi (pour "visual") est un éditeur de texte conçu pour des terminaux textes. Il possède les commandes de :
    déplacement  : (flèches de déplacement)
    insertion avant le curseur : i puis esc pour sortir de ce mode
    insertion après le curseur : a puis esc pour sortir de ce mode
    insertion de texte avant la ligne courante : O puisesc pour sortir de ce mode
    insertion de texte après la ligne courante : opuisesc pour sortir de ce mode

    destruction du caractère courant : x
    destruction de la ligne courante : dd
    joindre la ligne courante et la ligne suivante : J

    recherche en avant de "chaîne" (chaîne = expression régulière) : /chaîne
    recherche en arrière de "chaîne" (chaîne = expression régulière) : ?chaîne
    continuer la recherche : n    remplacer le caractère courant : r puis le caractère à remplacer
    remplacer les caractères (limité à la fin de ligne ou avant avec esc): R

    substitution de la première occurence de la chaîne1 en chaîne2 : :s/chaîne1/chaîne2/
    substitution de toutes les occurences de chaîne1 en chaîne2 : :s/chaîne1/chaîne2/g
    substitution la chaîne1 en chaîne2  partout dans le fichier : :1,$s/chaîne1/chaîne2/g

    sauvegarde et quitte : :wq puis entrée
    abandone et quitte : :q! puis entrée

       => Copiez le fichier html de ce TP dans le répertoire TP4 de votre compte, et effectuez à l'aide de l'éditeur vi les modifications suivantes :
        Insérez l'image suivante sous l'image qui se trouve en haut du sujet alignée à droite
        Remplacez le fond d'écran par celui-ci
        Recherchez les mots "expressions" et remplacez-les par "Expressions"


ed
est un éditeur de texte qui, bien que ne fonctionnant qu'en ligne de commande,  tire sa puissance  de la prise en compte des expressions régulières. Il possède les commandes de :
    affichage de la ligne courante : p
    affichage de la ligne courante avec les caractères de contrôle : l
    affichage de la ligne courante et de son numéro : n
    destruction de la ligne courante : d
    ajout de <texte> après la ligne courante : a <texte>
    ajout de <texte> avant la ligne courante : i <texte>
    remplacement de la ligne courante par <texte> : c <texte>
    insere <fichier> après la ligne courante  :  r <fichier>
    substitution de la première occurence de la chaîne1 en chaîne2 : s/chaîne1/chaîne2/
    substitution de toutes les occurences de chaîne1 en chaîne2 : s/chaîne1/chaîne2/g
    execution de <commande> pour toutes les lignes qui contiennent chaîne : g/chaîne/<commande>; cette <commnde> est une des commandes de ed
    sauvegarde dans le fichier édité : w
    sauvegarde le fichier sous le nom <fichier> : w <fichier>
    quitte : q
rem :
il est possible de faire précéder les commandes par des préfixes  (.  = ligne courante, +n = n lignes après la ligne courante, -n = n lignes avant la ligne courante, $ = dernière ligne, 1,$ = de la première à la dernière ligne)

       => Créez un fichier texte ("entete") contenant le texte suivant :
//****************//
// methode d'instance //
//****************//
       =>  Créez un fichier texte (commandes.ed) contenant les commandes (1 par ligne) permettant,  sur un fichier source java personnel, de repérer les méthodes d'instances et de les faire précéder par l'entête décrite dans le fichier "entete".
       => Appliquez ces commandes par : ed<votre_source.java> < commandes.ed


2. Ecrire son journal

       => Créez un fichier d'archive de votre compte.
       => Créez un fichier texte, que l'on appellera fichier_de_log, qui contiendra la liste des fichiers avec la date de dernière modification et la taille.
       => Modifiez le contenu d'un fichier source de votre compte (un commentaire par exemple)
       => Trouvez les commandes permettant de mettre à jour votre archive si nécessaire,  ainsi que le fichier_de_log (sans tout recréer !!!)
       => Associez cette comande à l'alias journal


3.  Gestion de poubelles

       => Créez un répertoire "Poubelle" dans la racine de votre compte. Il servira de poubelle et contiendra les fichiers "supprimés" et un journal de bord permettant une récupération éventuelle,
       => Créez une ligne de commande qui déplace un fichier d'un répertoire à l'autre et qui génére la ligne suivante dans le fichier de log poubelle_log :
             <nom de fichier> <emplacement_origine> (sans les caractères < et >)
       => Créez un alias efface corespondant à cette ligne de commande,
       => Créez une ligne de commande qui déplace un fichier depuis le répertoire Poubelle vers son répertoire d'origine et supprime la ligne corespondante dans le fichier de log,
       => Créez un alias restaure corespondant à cette ligne de commande



    [ Noubliez pas d'envoyer votre compte-rendu et de le compléter pour la séance suivante ]