IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Aide création d'une commande


Sujet :

Shell et commandes GNU

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 59
    Par défaut Aide création d'une commande
    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.

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 658
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 658
    Par défaut
    Bonjour,

    l'exposé du sujet de l'exercice n'est pas clair.
    entre autre :
    créer une commande qui vérifie les bituisd des fichiers pour voir si ils ont été modifié ou pas
    comment puis-je connaître l'état précédent d'une chose que j'observe pour la première fois ?

    avec test -u un_ficher
    je peux savoir si le bit setuid est mis sur un fichier...

    getopts devrait vérifier toutes les options (même -h)
    la boucle while permet de répéter getopts pour les passer en revue, donc ce n'est pas la peine de chercher -f dans le cas de -c

    pwd n'accepte pas d'argument
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 59
    Par défaut
    merci pour les précisions.
    En faite la commande on la lance une fois qui va créer le fichier de référencement puis on la lance une seconde fois avec une autre option pour verifier par rapport au premier fichier créé

    J'espère avoir été clair

    merci.

Discussions similaires

  1. aide création d'une liste numérotée
    Par fredo0877 dans le forum Mise en forme
    Réponses: 1
    Dernier message: 31/07/2011, 21h19
  2. Aide à création d'une procédure
    Par crouba dans le forum SQL Procédural
    Réponses: 9
    Dernier message: 24/06/2010, 10h14
  3. Création d'une commande avec ICommand et RoutedEvent
    Par al2000 dans le forum Windows Presentation Foundation
    Réponses: 2
    Dernier message: 19/04/2009, 23h10
  4. Aide création d'une commande
    Par TimoP dans le forum Programmation (La)TeX avancée
    Réponses: 6
    Dernier message: 05/02/2008, 17h20
  5. [Aide] Création d'une interface Ajout/Suppression
    Par Fredods26 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 4
    Dernier message: 19/10/2006, 14h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo