Bonjour forumeurs,

J'ai actuellement un petit devoir à faire et j'aimerais avoir un peu d'aide.

On doit créer une commande qui vérifie les bituisd des fichiers pour voir si ils ont été modifié ou pas.

la commande s'appelle chksuid et doit avoir comme option :

-c : qui crée le fichier qui va servir de référence
-f : qui va servir a l'utilisateur pour indiquer le répertoire vers lequel le il veut que le fichier de reference soit créer.

Première question est ce que déja le code vous semble cohérent, il marche mais y'a surement moyen de mieux faire. (première fois que j'utilise getops).

Secundo, avez-vous un début d'idée sur comment comparé les deux fichiers de référencement et rajouter dans le deuxième les infos comme quoi un fichier a été modifié ? (peut-être un awk ?)

Voila le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#! /bin/bash
 
 
 
man() {
 
        echo "+"
 
        echo "+ +" $nom [-c] [-f nomRépertoire]
 
        echo "+ +" $nom [-a]
 
        echo "+"
 
        }
 
 
 
if [ $# -eq 1 -a "$1" = -h ];then man;exit 2;fi
 
 
 
errOption=3
 
rep=./refsuid
 
 
 
while getopts "cf:v" OPTION
 
        do
 
        case $OPTION in
 
        c)
 
        if [ "$2" = -f ]
 
        then
 
        rep=$3
 
        fi
 
        find / -perm /u+s -type f >$rep 2>/dev/null
 
        pwd $rep | xargs -i echo {} >./emplacement
 
        ;;
 
        :)
 
        echo "Nom de répertoire absent"
 
        ;;
 
        v)
 
        cat ./rep | xargs ls -l
 
        ;;
 
        esac
 
        done
merci d'avance
Bonne journée.