Forum Programmation.shell Aide synthax shell pourle "case"

Posté par  .
Étiquettes : aucune
0
23
jan.
2007
file_sql=requete.sql
path_sqlplus=/exec/products/oracle/v10.2.0/bin
ORACLE_BASE=/exec/products/oracle
ORACLE_SID=RMSPOW1
database=$ORACLE_SID
ORACLE_HOME=/exec/products/oracle/v10.2.0

#TIMESTAMP Thu Jan 18 19:28:25 NFT 2007
JOURSEMAINE=`date |cut -c 1-3`
#Thu
MOIS=`date |cut -c 5-7`
#Jan
JOUR=`date |cut -c 9-10`
HEURE=`date |cut -c 12-13`
#MINUTE

echo "Exécution du fichier contenant la requete"

echo "test" $JOURSEMAINE $MOIS $JOUR $HEURE

# $path_sqlplus/sqlplus $user/$password

#$path_sqlplus/sqlplus $user/$password@$database $file_sql

#VALUE=`sqlplus -silent "/ " <<END

#set pagesize 0 feedback off verify off heading off echo off

#select count(*) from owlaccount where timestamp like '18-DEC-06 10%';

#select count(*) from owlaccount where timestamp like '$JOURSEMAINE-$MOIS-$JOUR $HEURE%';

if [ $HEURE

exit;
END`

if [ -z "$VALUE" ]; then
echo "No rows returned from database"
fi

#case "$HEURE" in

model1)))


J'ai un soucis au niveau de la synthax pour le "case" et mon soucis se situe + précisément sur :
l'heure dans la base est en UK (AM/PM) et celle sur AIX est en FR (12/24), comment attribuer les conditons???

Merci à tous pour votre contribution....
  • # date

    Posté par  . Évalué à 3.

    - Une base de donnée est faite pour traiter des données, ce traitement coté script n'a pas de sens, ça fait une seconde techno et un second code à maintenir. En prime, le shell est une plaie pour la gestion des erreurs.

    - L'utilisation de "date | cut" sans même régler la locale est suicidaire, d'ailleurs c'est ton problème. En prime, les versions évoluées de date permettent de préciser le format.

    - L'utilisation des dates oracle sans formattage est une grosse source de problème, toutes les dates doivent passer par "TO_CHAR". Ca permet d'avoir un format connu et maitrisé.

Suivre le flux des commentaires

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