Forum Programmation.shell find et incomplete statement

Posté par  (site web personnel) .
Étiquettes : aucune
0
6
sept.
2007
Bonjour

Je commence un script pour détruire différents fichiers dans des directories suivant plusieurs critères.
Pour l'instant mon script s'arrête sur le find avec '"incomplete statement", alors que si je lance la ligne affichée (si je le lance avec ksh -x -v script)
la même commande trouve plein de fichiers

Mon script

#!/usr/bin/sh
#
dir1="/tmp"
typ1="-type f"
ret1=5
fin="-print -exec ls -al {} \;"
find $dir1 $typ1 -mtime +$ret1 $fin
$

Lancé avec -x -v, ça donne

+ find /tmp -type f -mtime +5 -print -exec ls -al {} \;
find: incomplete statement

Merci pour toute idée
  • # chezmoicamarche.org

    Posté par  . Évalué à 2.

    en bash, cela fonctionne (pas dans le script, donc j'ai pas tout testé)

    et pour faire "plus court"

    find /tmp -type f -mtime +5 -exec ls -al {} \;


    solution ?
    1°)
    mettre un
    #!/bin/bash
    au debut du script

    ou
    2°) trouvé ce qui change entre bash et ksh
  • # -exec ;

    Posté par  (site web personnel) . Évalué à 2.

    Essaye sans le \

    Je crois que dans un script, il n'y en a pas besoin. Il sert juste à le différencier du ; interprété par le shell quand on le lance directement.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.