[Crontab] Différence d'interprétation script
Résolu
Jaime
-
jipicy Messages postés 41342 Statut Modérateur -
jipicy Messages postés 41342 Statut Modérateur -
Bonjour,
je me permets une fois de plus de vous solliciter, ce forum m'ayant à chaque fois permis de résoudre mes problèmes !
Voici mon souci :
Je souhaite executer un .sh via Crontab. Le script s'execute bien, il ne génère pas d'erreurs, seulement, en consultant le détail du log, je vois une différence de résultat pour une même commande.
Voici le détail du script (juste le début) :
#!/bin/sh
set -xv
##### CONSTANTES #####
fichierbase=french-B2C-Shops.xml #ensemble de l'export
total=$(wc -l /home2/step/french-B2C-Shops.xml | sed 's\/home2/step/french-B2C-Shops.xml\\g') #nombre de ligne de l'export
bloc=8000000 #nombre de lignes extraites a chaque iteration
######################
##### ITERATIONS #####
###### FICHIER 1 - CLASS, ASSETS, ... ######(TOUT SAUF PRODUITS)
coupuretemp=$(grep -n "<Products>" $fichierbase|gawk -F ":" '{print $1}')
coupuretemp=$(($coupuretemp-1))
head -$(($coupuretemp)) $fichierbase > /home2/step/products1.xml
echo "</STEP-ProductInformation>" >> /home2/step/products1.xml #On ferme la balise
###############################################################
###### GENERATION FICHIER TEMP (ALL - Products1.xml) #####
tail -$(($total-$coupuretemp)) $fichierbase > /home2/step/products.tmp1
####################################
###### FICHIER 2 - PRODUITS PART 1 ###### DE LA TAILLE DE $BLOC
coupurebloc=$(head -n $bloc /home2/step/products.tmp1|tail -400000|grep -n 'UserTypeID="CPCS_Group"'|tail -1|gawk -F ":" '{print $1}')
J'ai mis en gras la dernière ligne qui me donne un résultat différent selon le type d'execution (Cron ou manuel). Le résultat est donc correct en manuel, mais mauvais en Cron.
Cette dernière commande est censée me donner la dernière ligne "UserTypeID="CPCS_Group"" trouvée dans le fichier "products.tmp1". Seulement c'est à partir de la que le script se gâte en me donnant 2 chiffres différents....
J'ai bien pris garde à mettre mes chemins en absolu... Y a t-il autre chose que j'aurai pu oublier ?
Merci de votre aide,
Cordialement,
je me permets une fois de plus de vous solliciter, ce forum m'ayant à chaque fois permis de résoudre mes problèmes !
Voici mon souci :
Je souhaite executer un .sh via Crontab. Le script s'execute bien, il ne génère pas d'erreurs, seulement, en consultant le détail du log, je vois une différence de résultat pour une même commande.
Voici le détail du script (juste le début) :
#!/bin/sh
set -xv
##### CONSTANTES #####
fichierbase=french-B2C-Shops.xml #ensemble de l'export
total=$(wc -l /home2/step/french-B2C-Shops.xml | sed 's\/home2/step/french-B2C-Shops.xml\\g') #nombre de ligne de l'export
bloc=8000000 #nombre de lignes extraites a chaque iteration
######################
##### ITERATIONS #####
###### FICHIER 1 - CLASS, ASSETS, ... ######(TOUT SAUF PRODUITS)
coupuretemp=$(grep -n "<Products>" $fichierbase|gawk -F ":" '{print $1}')
coupuretemp=$(($coupuretemp-1))
head -$(($coupuretemp)) $fichierbase > /home2/step/products1.xml
echo "</STEP-ProductInformation>" >> /home2/step/products1.xml #On ferme la balise
###############################################################
###### GENERATION FICHIER TEMP (ALL - Products1.xml) #####
tail -$(($total-$coupuretemp)) $fichierbase > /home2/step/products.tmp1
####################################
###### FICHIER 2 - PRODUITS PART 1 ###### DE LA TAILLE DE $BLOC
coupurebloc=$(head -n $bloc /home2/step/products.tmp1|tail -400000|grep -n 'UserTypeID="CPCS_Group"'|tail -1|gawk -F ":" '{print $1}')
J'ai mis en gras la dernière ligne qui me donne un résultat différent selon le type d'execution (Cron ou manuel). Le résultat est donc correct en manuel, mais mauvais en Cron.
Cette dernière commande est censée me donner la dernière ligne "UserTypeID="CPCS_Group"" trouvée dans le fichier "products.tmp1". Seulement c'est à partir de la que le script se gâte en me donnant 2 chiffres différents....
J'ai bien pris garde à mettre mes chemins en absolu... Y a t-il autre chose que j'aurai pu oublier ?
Merci de votre aide,
Cordialement,
A voir également:
- [Crontab] Différence d'interprétation script
- Script vidéo youtube - Guide
- Difference tcp udp - Guide
- Difference million milliard - Accueil - Technologies
- Ghost script - Télécharger - Polices de caractères
- Mas script - Accueil - Windows
3 réponses
Salut,
Seulement c'est à partir de la que le script se gâte en me donnant 2 chiffres différents....
Est-ce que ce chiffre correspond à une donnée sensée se trouver dans le fichier tout de même ?
J'ai bien pris garde à mettre mes chemins en absolu...
fichierbase=french-B2C-Shops.xml #ensemble de l'export
Je ne vois pas de chemin absolu, là ? ;-\
Seulement c'est à partir de la que le script se gâte en me donnant 2 chiffres différents....
Est-ce que ce chiffre correspond à une donnée sensée se trouver dans le fichier tout de même ?
J'ai bien pris garde à mettre mes chemins en absolu...
fichierbase=french-B2C-Shops.xml #ensemble de l'export
Je ne vois pas de chemin absolu, là ? ;-\
Salut Jipicy,
J'ai bien pris garde à mettre mes chemins en absolu...
fichierbase=french-B2C-Shops.xml #ensemble de l'export
Je ne vois pas de chemin absolu, là ? ;-\
Oui en effet, à force d'avoir toujours le nez dans le code, on en vient à passer à côté de choses évidentes....
J'ai retesté avec la modification, cela fonctionne....
Désolé pour le dérangement et encore merci !
J'ai bien pris garde à mettre mes chemins en absolu...
fichierbase=french-B2C-Shops.xml #ensemble de l'export
Je ne vois pas de chemin absolu, là ? ;-\
Oui en effet, à force d'avoir toujours le nez dans le code, on en vient à passer à côté de choses évidentes....
J'ai retesté avec la modification, cela fonctionne....
Désolé pour le dérangement et encore merci !