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 :

Outils de gestion des fichiers sous Linux


Sujet :

Shell et commandes GNU

  1. #1
    Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Outils de gestion des fichiers sous Linux
    Bonjour, j'ai un projet à réaliser (Linux) concernant la gestion des fichiers et répertoires et j'ai utilisé des cases imbriqués et je pense que c'est la bonne solution.
    voila une partie de mon programme:
    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
    echo "Menu principal:
                                                1.création.
                                                2.suppression.
                                                 3.recherche.
                                                 4.ouvrir.
                                                 6.infos.
                                                 7.corbeille.
                                                 8.help.
                                                  9.exit."
    echo "Entrez votre choix"
    read reponse
    clear
           case $reponse in
    1) echo "Menu création :
                                                   1 - créer un fichier.
                                                   2 - créer un rep.
    esac
          echo "voulez vous créer un fichier ou un rep?"
    read i
    case $i in
                           1) echo "entrez le nom de fichier à créer:"
                           read fich
                          touch $fich
        echo "le fichier est bien créer";;
                          2) echo "entez le nom de rep à créer :"
                             read rep
                             mkadir $rep
         echo "le repertoire est bien crée";;
    2) echo "Menu céation:
                                                    1 - supprimer un fichier.
                                                    2 - supprimer un rep.
    esac                
     echo "voulez vous vraiment supprimer un fichier ou un rep?"
    read y
    case $y in
                          1) echo "Entrez le nom de fichier à supprimer"
                read fich_sup
                rm $fich_sup > corbeille
    echo "le fichier est bien supprimé";;
                          2) echo "Entez le nom de rep à supprimer"
                 read  rep_sup
                rm $rep_sup > corbeille
    echo "le rep est supprimé";;
    mais le problème c'est que quand le script s'exécute ,il affiche:
    entrez votre choix: 1 (par exemple)
    entrez le nom de fichier à créer:
    aouatif (par exemple)
    après il affiche:
    le fichier est bien crée
    voulez vous vraiment supprimer un fichier ou un rep? (menu de suppression)
    Et je ne veux pas qu'il affiche la dernière ligne.

    Je ne sais pas comment faire. Pouvez-vous m'aider s 'il vous plait ?

  2. #2
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 150
    Points : 28 123
    Points
    28 123
    Par défaut
    Bonjour,

    Tout d'abord, je vous conseille d'utilser un éditeur de texte avec indentation et coloration syntaxique : cela permet d'éviter de nombreuses erreurs, comme par exemple le fait qu'il manque des "" dans ton script, ainsi que le fait que les fins des "case" ne soient pas du tout au bon endroit.

    Voici un exemple à partir de ce que tu avais écris. Poses des questions si tu ne comprends pas.

    Pour information :
    Dans un script, on utilise au maximum les chemins absolus au lieu des chemin relatifs.
    Il faut penser à tester le code de retour des fonctions que tu appelles avant de dire OK ou KO
    Il faut penser à passer les options nécessaires, comme rm -r pour effacer un répertoire.
    Code bash : 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
    66
     
    #!/bin/bash
     
    echo "Menu principal:
                 1.création.
                 2.suppression.
                 3.recherche.
                 4.ouvrir.
                 5.
                 6.infos.
                 7.corbeille.
                 8.help.
                 9.exit."
     
    echo "Entrez votre choix"
     
    read reponse
     
    clear
     
    case $reponse in
    	1) echo "Menu création :
                 1 - créer un fichier.
                 2 - créer un rep."
     
     
    		echo "voulez vous créer un fichier ou un rep?"
    		read i
     
    		case $i in
    			1) echo "entrez le nom de fichier à créer:"
    				read fich
    				/bin/touch $fich
    ## Tester le code de retour de touch avant de dire que tout s'est bien passe.
    				echo "le fichier est bien créer"
    				;;
    			2) echo "entez le nom de rep à créer :"
    				read rep
    				/bin/mkdir $rep
    ## Tester le code de retour de mkdir avant de dire que tout s'est bien passe.
    				echo "le repertoire est bien crée"
    				;;
    		esac
    		;;
    	2) echo "Menu céation:
    				1 - supprimer un fichier.
    				2 - supprimer un rep."
     
    		echo "voulez vous vraiment supprimer un fichier ou un rep?"
    		read y
    		case $y in
    			1) echo "Entrez le nom de fichier à supprimer"
    				read fich_sup
    				/bin/rm $fich_sup > corbeille
    ## Tester le code de retour de rm avant de dire que tout s'est bien passe.
    				echo "le fichier est bien supprimé"
    				;;
     
    			2) echo "Entez le nom de rep à supprimer"
    				read  rep_sup
    				/bin/rm -r $rep_sup > corbeille
    ## Tester le code de retour de rm avant de dire que tout s'est bien passe.
    				echo "le rep est supprimé"
    				;;
    		esac
    esac

Discussions similaires

  1. Lister des fichiers sous Linux pour un utilisateur non root
    Par identifiant_bidon dans le forum Général Java
    Réponses: 4
    Dernier message: 18/10/2011, 15h53
  2. Accés aux notes des fichiers sous linux
    Par Syphys dans le forum Général Python
    Réponses: 6
    Dernier message: 04/03/2011, 20h01
  3. Gestion des processus sous Linux
    Par progdevlop dans le forum C
    Réponses: 18
    Dernier message: 27/06/2009, 14h45
  4. Gestion des perfs sous linux
    Par yanis97 dans le forum Linux
    Réponses: 3
    Dernier message: 21/02/2009, 21h29
  5. gestion des quotas sous linux
    Par mrrenard dans le forum Administration système
    Réponses: 2
    Dernier message: 05/02/2008, 11h40

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