Corrigé contrôle machin
This commit is contained in:
parent
c08ad73ebc
commit
e2cc18da4d
0
CM/TR/lib/kernel/go44go
Normal file
0
CM/TR/lib/kernel/go44go
Normal file
0
CM/TR/lib/krb5/REP34578/fafa
Normal file
0
CM/TR/lib/krb5/REP34578/fafa
Normal file
0
CM/TR/lib/krb5/REP34578/fifi
Normal file
0
CM/TR/lib/krb5/REP34578/fifi
Normal file
48
CM/TR/lib/krb5/plugins/inout.dev
Normal file
48
CM/TR/lib/krb5/plugins/inout.dev
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
[[ $1 == "add" ]] || exit 0
|
||||||
|
[[ $2 ]] || exit 1
|
||||||
|
|
||||||
|
exec depmod -a "$2"
|
||||||
|
#!/bin/bash
|
||||||
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
[[ $1 == "add" ]] || exit 0
|
||||||
|
[[ $2 ]] || exit 1
|
||||||
|
|
||||||
|
exec depmod -a "$2"
|
||||||
|
#!/bin/bash
|
||||||
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
[[ $1 == "add" ]] || exit 0
|
||||||
|
[[ $2 ]] || exit 1
|
||||||
|
|
||||||
|
exec depmod -a "$2"
|
||||||
|
#!/bin/bash
|
||||||
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
[[ $1 == "add" ]] || exit 0
|
||||||
|
[[ $2 ]] || exit 1
|
||||||
|
|
||||||
|
exec depmod -a "$2"
|
||||||
|
#!/bin/bash
|
||||||
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
[[ $1 == "add" ]] || exit 0
|
||||||
|
[[ $2 ]] || exit 1
|
||||||
|
|
||||||
|
exec depmod -a "$2"
|
||||||
|
#!/bin/bash
|
||||||
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
[[ $1 == "add" ]] || exit 0
|
||||||
|
[[ $2 ]] || exit 1
|
||||||
|
|
||||||
|
exec depmod -a "$2"
|
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/11glob22blog3
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/11glob22blog3
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/1glob
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/1glob
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/1glob22
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/1glob22
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/1glob22gloB333
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/1glob22gloB333
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/gLob/44patterN
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/gLob/44patterN
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/gLob/Pattern4
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/gLob/Pattern4
Normal file
BIN
CM/TR/lib/krb5/plugins/kdb/MORE/GL/gLob/archive.tar
Normal file
BIN
CM/TR/lib/krb5/plugins/kdb/MORE/GL/gLob/archive.tar
Normal file
Binary file not shown.
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/gLob/pAtterN
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/gLob/pAtterN
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/gLob/patterN
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/gLob/patterN
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/gloB1bloG
Normal file
0
CM/TR/lib/krb5/plugins/kdb/MORE/GL/gloB1bloG
Normal file
BIN
CM/TR/lib/krb5/plugins/play.in
Normal file
BIN
CM/TR/lib/krb5/plugins/play.in
Normal file
Binary file not shown.
0
CM/TR/lib/krb5/plugins/preauth/STUFF/FAR/ROLL/1glob
Normal file
0
CM/TR/lib/krb5/plugins/preauth/STUFF/FAR/ROLL/1glob
Normal file
BIN
CM/TR/lib/krb5/plugins/preauth/STUFF/FAR/ROLL/archive.tar
Normal file
BIN
CM/TR/lib/krb5/plugins/preauth/STUFF/FAR/ROLL/archive.tar
Normal file
Binary file not shown.
0
CM/TR/lib/krb5/start1637end
Normal file
0
CM/TR/lib/krb5/start1637end
Normal file
0
CM/TR/lib/krb5/start56end
Normal file
0
CM/TR/lib/krb5/start56end
Normal file
16
CM/TR/lib/krb5/synch/atom.install
Normal file
16
CM/TR/lib/krb5/synch/atom.install
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
[[ $1 == "add" ]] || exit 0
|
||||||
|
[[ $2 ]] || exit 1
|
||||||
|
|
||||||
|
exec depmod -a "$2"
|
||||||
|
#!/bin/bash
|
||||||
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
[[ $1 == "add" ]] || exit 0
|
||||||
|
[[ $2 ]] || exit 1
|
||||||
|
|
||||||
|
exec depmod -a "$2"
|
24
CM/TR/lib/krb5/synch/settings.sh
Normal file
24
CM/TR/lib/krb5/synch/settings.sh
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
[[ $1 == "add" ]] || exit 0
|
||||||
|
[[ $2 ]] || exit 1
|
||||||
|
|
||||||
|
exec depmod -a "$2"
|
||||||
|
#!/bin/bash
|
||||||
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
[[ $1 == "add" ]] || exit 0
|
||||||
|
[[ $2 ]] || exit 1
|
||||||
|
|
||||||
|
exec depmod -a "$2"
|
||||||
|
#!/bin/bash
|
||||||
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
[[ $1 == "add" ]] || exit 0
|
||||||
|
[[ $2 ]] || exit 1
|
||||||
|
|
||||||
|
exec depmod -a "$2"
|
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 -----------------------------------
|
||||||
|
-----------------------------------------------------------------------------
|
19
CM/correction.txt
Normal file
19
CM/correction.txt
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
Exercice 1)
|
||||||
|
ls -R --full-time TR/
|
||||||
|
ls -lR --time-style=full-iso TR/
|
||||||
|
|
||||||
|
Exercice 2)
|
||||||
|
ls -d TR/lib/krb5/*5[4-9]* TR/lib/krb5/*6[0-7]* TR/lib/kernel/*5[4-9]* TR/lib/kernel/*6[0-7]*
|
||||||
|
|
||||||
|
Exercice 3)
|
||||||
|
find TR/ -mindepth 6 -newer TR/lib/krb5/plugins/inout.dev
|
||||||
|
|
||||||
|
Exercice 4)
|
||||||
|
find TR/ -mindepth 8 -maxdepth 8 -type d -exec mkdir '{}'/NEW \;
|
||||||
|
|
||||||
|
Exercice 5)
|
||||||
|
find TR/ -mindepth 8 -maxdepth 8 -execdir tar cvf archive.tar '{}' +
|
||||||
|
|
||||||
|
Exercice 6)
|
||||||
|
Voir utf8tocode.sh
|
||||||
|
|
4
CM/utf8.dat
Normal file
4
CM/utf8.dat
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
1101001010110101
|
||||||
|
111010011011110110110100
|
||||||
|
01011011
|
||||||
|
11110100101010111011010110111100
|
38
CM/utf8tocode.sh
Executable file
38
CM/utf8tocode.sh
Executable file
@ -0,0 +1,38 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [[ $# -lt 2 ]]
|
||||||
|
then
|
||||||
|
echo "Usage: $0 <display_format> <SCR_FILE>"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $1 != "1" && $1 != "2" ]]
|
||||||
|
then
|
||||||
|
echo "Unknown display format. Please submit 1 if no prefix, 2 for prefix U+"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ ! -f $2 ]]
|
||||||
|
then
|
||||||
|
echo "File $2 doesn't exist or is not regular"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $1 == "2" ]]
|
||||||
|
then
|
||||||
|
fmt="U+"
|
||||||
|
fi
|
||||||
|
while read addr
|
||||||
|
do
|
||||||
|
l=$(expr length $addr)
|
||||||
|
ind=$(expr index $addr "0")
|
||||||
|
cont=$(expr substr $addr $((ind+1)) $((8-ind)))
|
||||||
|
pos=11
|
||||||
|
while [[ $pos -lt $l ]]
|
||||||
|
do
|
||||||
|
cont=$cont$(expr substr $addr $pos 6)
|
||||||
|
pos=$((pos+8))
|
||||||
|
done
|
||||||
|
printf "$fmt%x\n" $((2#$cont))
|
||||||
|
done < $2
|
||||||
|
exit
|
Loading…
Reference in New Issue
Block a user