Erreur dans l'execution d'un script sous cron

carhod -  
kilian Messages postés 8854 Statut Modérateur -
Bonjour

J’ai un souci avec un script renamefile.sh

Voici ce qu’il contient :

##renommer les fichiers extraits avec la date du jour
set -x
cd /home5/PHONE/EXTRAIT

for i in $(ls 010*$(expr ```date +%Y%m%d` - 1` +%Y%m%d`));do mv $i ${i%_*}_$(date +'%Y%m%d');done

for i in $(ls 011*$(expr ```date +%Y%m%d` - 1` +%Y%m%d`));do mv $i ${i%_*}_$(date +'%Y%m%d');done

Ce script me renomme tous les fichiers commençant par 010 ou 011 de la veille avec la date du jour.

Lorsque je l’exécute directement sous le prompt (./renamefile.sh sous bash) il fonctionne correctement.

Mais quand je le mets dans le cron, j’ai le message d’erreur suivant :

/export/home2/home/PHONE/FAX/EXTRAIT/renamefile.sh: syntax error at line 4: `$' unexpected

Je l’ai modifié en mettant

bash
set -x
cd /home5/PHONE/EXTRAIT

for i in $(ls 010*$(expr ```date +%Y%m%d` - 1` +%Y%m%d`));do mv $i ${i%_*}_$(date +'%Y%m%d');done

for i in $(ls 011*$(expr ```date +%Y%m%d` - 1` +%Y%m%d`));do mv $i ${i%_*}_$(date +'%Y%m%d');done

Mais quand je lance l’exécution il passe en bash et il attend que je valide pour continuer.

vous avez une idée de comment je peux faire ?

merci
A voir également:

1 réponse

kilian Messages postés 8854 Statut Modérateur 1 526
 
Signale dés le début que c'est du bash en utilisant le "sha-bang":
#!/bin/bash
0