Corrigé contrôle machin
This commit is contained in:
151
CM/TaF
Normal file
151
CM/TaF
Normal file
@@ -0,0 +1,151 @@
|
||||
|
||||
------------------------ INSTRUCTIONS A LIRE JUSQU'AU BOUT -------------------
|
||||
|
||||
Cher lecteur, si vous etes en train de me lire par vim ou par un autre
|
||||
editeur de texte, je vous demanderai de sortir de l'editeur de texte et
|
||||
de m'ouvrir simplement par la commande less qui fait peser moins de risque
|
||||
sur moi et sur vous.
|
||||
Avec less, on avance/recule avec les fleches haut/bas et on avance/recule
|
||||
page par page par CTRL-V/CTRL-B
|
||||
----------------------------------------------------------------------------
|
||||
On rendra l'archive <login>-scr.1.2-1.tar contenant le fichier reponses et
|
||||
le script <login>-utf8tocode.sh, qui fait l'objet d'un exercice.
|
||||
|
||||
A la fin de l'epreuve se reporter au fichier README pour, en particulier,
|
||||
appliquer correctement la commande d'archivage.
|
||||
-----------------------------------------------------------------------------
|
||||
--------------------------------------------------------------------------
|
||||
/Nom/Prenom/nom_machine/ est-il place au debut du fichier
|
||||
reponses ?
|
||||
Preceder chaque reponse par le numero de la question traitee. Ce n'est
|
||||
pas la longueur de la reponse qui compte mais sa pertinence.
|
||||
----------------------------------------------------------------------------
|
||||
------------------------------------------------------------------------------
|
||||
TOUTES LES QUESTIONS DOIVENT ETRE TRAITEES SANS BOUGER
|
||||
DU REPERTOIRE DE BASE.
|
||||
---------------------------------------------------------------------------
|
||||
1/
|
||||
Consulter la page manuel de ls pour savoir comment afficher les dates de
|
||||
derniere modification comme dans :
|
||||
|
||||
2022-11-16 15:49:40.036307437 +0100
|
||||
|
||||
puis, a l'aide de ls uniquement, donner la ligne de
|
||||
commandes permettant d'afficher le contenu de toute l'arborescence qui
|
||||
commence en TR/ en donnant pour chaque element, entre autres, la date de
|
||||
derniere modification au format indique ci-dessus.
|
||||
|
||||
La ligne de commandes ls demandee doit etre non composee, c'est a dire,
|
||||
sans les symboles ; , | , ||, &&, ...
|
||||
|
||||
Placer la ligne de commandes dans le fichier reponses.
|
||||
Inutile de recopier le resultat de la ligne de commandes.
|
||||
|
||||
-------------------------------------------------------------------------------
|
||||
2/
|
||||
SANS BOUGER DU REPERTOIRE DE BASE, a l'aide uniquement d'une seule ligne de
|
||||
commandes ls et sans descendre dans les repertoires dont le nom correspond au motif,
|
||||
afficher la liste de tous les elements de TR/lib/krb5/ et de TR/lib/kernel/
|
||||
dont le nom contient deux chiffres qui se suivent formant un nombre de valeur
|
||||
comprise entre 54 et 67 inclus.
|
||||
|
||||
La ligne de commandes ls demandee doit etre non composee, c'est a dire,
|
||||
sans les symboles ; , | , ||, &&, ...
|
||||
|
||||
On doit utiliser les notations standards pour les classes
|
||||
de caracteres : [:upper:], [:lower:], ...
|
||||
|
||||
Les motifs proposes devront fonctionner dans n'importe quel repertoire
|
||||
ou on chercherait les memes configurations dans les noms des entrees
|
||||
(fichiers/repertoires) qu'il contient.
|
||||
|
||||
|
||||
Placer la ligne de commandes dans le fichier reponses.
|
||||
Inutile de recopier le resultat de la ligne de commandes.
|
||||
----------------------------------------------------------------------------------
|
||||
|
||||
3/
|
||||
SANS BOUGER DU REPERTOIRE DE BASE et a l'aide uniquement d'une seule ligne de
|
||||
commandes find, sans utiliser xargs et sans aucun pipeline :
|
||||
|
||||
afficher la liste de tous les elements de l'arborescence qui commence en TR/
|
||||
qui se trouvent a une profondeur au moins 6 et dont la date de derniere modification
|
||||
est posterieure a (plus recente que) celle du fichier inout.dev
|
||||
|
||||
Placer la ligne de commandes dans le fichier reponses.
|
||||
Inutile de recopier le resultat de la ligne de commandes.
|
||||
|
||||
-----------------------------------------------------------------------------------
|
||||
4/
|
||||
|
||||
SANS BOUGER DU REPERTOIRE DE BASE et a l'aide uniquement d'une seule ligne de
|
||||
commandes find, sans utiliser xargs et sans aucun pipeline :
|
||||
|
||||
Creer un repertoire NEW dans chaque repertoire se trouvant a une profondeur exactement 8
|
||||
de l'arborescence qui commence en TR/
|
||||
|
||||
Placer la ligne de commandes dans le fichier reponses.
|
||||
Inutile de recopier le resultat de la ligne de commandes.
|
||||
|
||||
---------------------------------------------------------------------------------------
|
||||
5/
|
||||
|
||||
SANS BOUGER DU REPERTOIRE DE BASE et a l'aide uniquement d'une seule ligne de
|
||||
commandes find, sans utiliser xargs et sans aucun pipeline :
|
||||
|
||||
Dans chaque repertoire contenant des fichiers reguliers se trouvant
|
||||
a une profondeur exactement de 8 de l'arborescence qui commence en TR/
|
||||
creer une archive appelee archive.tar de ces fichiers-la.
|
||||
|
||||
Placer la ligne de commandes dans le fichier reponses.
|
||||
Inutile de recopier le resultat de la ligne de commandes.
|
||||
|
||||
---------------------------------------------------------------------------
|
||||
|
||||
6/
|
||||
|
||||
On veut ecrire un script <login>-utf8tocode.sh qui prend deux arguments
|
||||
a la ligne de commandes. Le deuxieme argument est le nom d'un fichier contenant
|
||||
des encodages UTF-8, un par ligne. Le script affiche en hexadecimal, pour chaque
|
||||
encodage dans le fichier, la valeur du point de code correspondant. Le premier
|
||||
argument est un indicateur soumis par l'utilisateur sous la forme 1 ou 2, ou 2
|
||||
signifie que le point code doit etre prefixe par la notation U+, et 1 signifie
|
||||
qu'il n'y a aucun prefixe a ajouter lors de l'affichage.
|
||||
|
||||
Ecrire le script <login>-utf8tocode.sh en gerant toutes les erreurs
|
||||
sur les parametres a la ligne de commandes.
|
||||
|
||||
-----------------------------------------------------------------------
|
||||
PLACER NOM/PRENOM/NOM_MACHINE en commentaire VERS LE DEBUT DU script.
|
||||
----------------------------------------------------------------------
|
||||
Le fichier utf8.dat est fourni pour faire des tests rapidement.
|
||||
ATTENTION : Le script ne doit pas etre adapte au contenu de utf8.dat.
|
||||
|
||||
On suppose que tous les encodages UTF-8 dans le fichier source sont corrects.
|
||||
|
||||
On pourra utiliser la commande printf du shell qui utilise les formats
|
||||
d'affichage comme le fait printf du C.
|
||||
|
||||
$ ./utf8tocode.sh
|
||||
Usage: ./utf8tocode.sh <display_format> <SCR_FILE>
|
||||
|
||||
$ ./utf8tocode.sh 1 mimi.dat
|
||||
File mimi.dat doesn't exist or is not regular
|
||||
|
||||
$ ./utf8tocode.sh 3 utf8.dat
|
||||
Unknown display format. Please submit 1 if no prefix, 2 for prefix U+
|
||||
|
||||
$ ./utf8tocode.sh 1 utf8.dat
|
||||
4b5
|
||||
9f74
|
||||
5b
|
||||
12bd7c
|
||||
|
||||
$ ./utf8tocode.sh 2 utf8.dat
|
||||
U+4b5
|
||||
U+9f74
|
||||
U+5b
|
||||
U+12bd7c
|
||||
|
||||
----------------------------- C'EST FINI -----------------------------------
|
||||
-----------------------------------------------------------------------------
|
Reference in New Issue
Block a user