Script shell

Résolu
samiastennis Messages postés 6 Statut Membre -  
samiastennis Messages postés 6 Statut Membre -
Bonjour,
je viens d'écrire une commande jeter qui permet de manipuler une poubelle de fichiers--un répertoire -- nommée poubelle situé à mon racine.La commande a trois options :
jeter -l pour lister le contenu de la poubelle ;
jeter -r pour vider la poubelle ;
jeter fichier1 fichier2 ...
pour déplacer des fichiers considérés vers la poubelle ;
la commande jeter commence par vérifier si le répertoire poubelle existe dans le répertoire home ou non, sinon elle le crée.

à chaque éxécution, un message s'affiche "Erreur de syntaxe près du symbole inattendu « fi »"
Aidez-moi SVP
Merci

voilà mon programme :
!/bin/bash
POUBELLE=$HOME/poubelle/
if test ! -d $POUBELLE then
mkdir $POUBELLE
fi;
case $1 in
-l) ls $POUBELLE;;
-r) rm -r $POUBELLE/*;;
  • ) mv $@ $POUBELLE/;;

esac

1 réponse

  1. Utilisateur anonyme
     
    pareil que précédemment, il manque un point-virgule.

    attention
    $@
    est un tableau, sans guillemets, il se comporte comme
    $*
    sans guillemets, c'est-à-dire qu'il sera coupé en mots, et pas en éléments. le problème apparaîtra quand un élément comportera un/des espace(s).
    1
    1. samiastennis Messages postés 6 Statut Membre
       
      thump up =)
      0