Bonjour , avant de poster je tiens à dire que j'ai lu plusieurs topics parlant de sujet identiques :
http://www.developpez.net/forums/d10...tab-ne-marche/
http://www.developpez.net/forums/d69...cement-manuel/
http://lea-linux.org/forums/read.php?1,44295

Mais que je ne m'en sort toujours pas...

j'ai mon script :
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
 
result=`/u01/app/oracle/product/o10g/bin/sqlplus -s ${2}/${3}@${1} <<!!!!END!!!!   
 
set heading off
set term off
set echo off
set feed 0
set ver off
set serveroutput on
DECLARE
	CURSOR c IS
	SELECT xxx
	FROM xxx
	WHERE xx
 
BEGIN
	FOR rec IN c
	LOOP
		dbms_output.put_line(rec.xxx);
	END LOOP;
END;
/
!!!!END!!!!`
 
countresult=`/u01/app/oracle/product/o10g/bin/sqlplus -s ${2}/${3}@${1} <<!!!!END!!!!   
 
set heading off
set term off
set echo off
set feed 0
set ver off
set serveroutput on
 
SELECT count(xxx)
FROM xxx
WHERE xxx
!!!!END!!!!`
 
/bin/echo "result : "${result}
/bin/echo "countresult : "${countresult}
set -A array ${result}
/bin/cat /EKPATCHS/Jelly/JELLY_COMP.xml
 
for (( i=0; i<countresult; i++ ))
do
/bin/sed -i "/${array[$i]}/d" /EKPATCHS/Jelly/JELLY_COMP.xml
 
traitement=`/u01/app/oracle/product/o10g/bin/sqlplus -s ${2}/${3}@${1} <<!!!!END!!!!
UPDATE xxx set xxx
WHERE xxx
!!!!END!!!!`
 
/bin/echo "traitement : "${traitement}
done 
/bin/cat /EKPATCHS/Jelly/JELLY_COMP.xml
que j'apelle avec le crontab :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
*/5 * * * * /EKPATCHS/Jelly/purge_JELLY_COMP.sh xxx xxx xxx >> /tmp/script.log

et donc le script marche très bien manuellement mais pas avec crontab.

j'ai lu qu'il fallait que les chemins soit absolus : je l'ai fait sauf pour la commande set que je ne sais pas comment gérer.

j'ai lu que crontab était lancé depuis un environnement restreint , mais je ne sais pas trop quoi faire dans mon cas spécifique sachant ça.

pour info , dans mon fichier de log, j'ai uniquement :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
result :
countresult :
sans même de valeur apparaissant.

I need some help