AWK pour Windows : Problème aléatoire et étrange

Ham1987 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
Ham1987 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

En utilisant AWK (1.3.3) pour Windows, nous avons rencontré un problème aléatoire et étrange.

Nous utilisons AWK pour découper des fichiers csv afin de les intégrer plus facilement dans notre application. Les fichiers arrivent toutes les 9 minutes et sont découpés puis chargés et cela toute la journée. Le problème est que certaines fois les fichiers ne sont pas découpés, cela peut arriver une ou plusieurs fois dans la même journée ou aucune fois.

Est-ce que quelqu’un a déjà rencontré ce problème et a une idée de la cause ?

Utilisation :
REM arg1 = file to split
REM arg2 = max size
REM arg3 = destination folder
REM arg4 = AWK folder
REM If file arg1 size is smaller than arg2 then use column 1 else use column 3

cd %3 & if %~z1 LSS %2 (%4awk -F; "{print >> $1\".csv\"}" %1) else (%4awk -F; "{print >> $3\".csv\"}" %1)


Merci pour vos retours.
A voir également:

2 réponses

Utilisateur anonyme
 
salut,

"découper" ? selon quel critère ? je ne vois qu'une redirection vers un fichier dont le nom est le premier ou le deuxième champ du fichier.
le reste je ne le comprends pas : je ne "parle" pas ce langage.

une observation fine (avec
od -c
?) du fichier, qui n'est pas "découpé", pourrait montrer des différences, qui justifieraient ce comportement erratique.
0
Ham1987 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Salut,

Merci pour votre retour.

C'est un fichier .bat qui contient ce code :

Si la taille du fichier est inférieure à la taille max alors on découpe selon le contenu de la colonne 1 sinon selon la colonne 3, d'où le $1 et $3 devant la commande awk.

Ce qui est étrange, c'est que quand je remets les fichiers non découpés dans le répertoire d'import, ils sont découpés, comme s'il y avait un évènement Windows qui empêchait le découpage la première fois.
0
UnGars > Ham1987 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Salut,
Les fichiers arrivent toutes les 9 minutes et sont découpés[...]
comme s'il y avait un évènement Windows qui empêchait le découpage la première fois.
Es-tu sûr que les fichiers sont complètement transférés lors de leur traitement ?.
Ça pourrait être une des causes de leur non-découpage ;-\
0
Ham1987 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   > UnGars
 
Oui, les fichiers sont bien transférés, le .bat de découpage n'est exécuté qu'une fois le fichier est bien transféré.
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
hello
sur Windows, je passerais par un fichier de commande plutot que par la ligne de commande
C:> type f1.awk
BEGIN {FS=";"} {print >> $1 ".csv"}

C:> type f2.awk
BEGIN {FS=";"} {print >> $3 ".csv"}

cd %3 & if %~z1 LSS %2 (%4awk -f f1.awk %1) else (%4awk -f f2.awk %1)

0
Ham1987 Messages postés 4 Date d'inscription   Statut Membre Dernière intervention  
 
Merci!

Vous pensez que cela a un impact de passer par un fichier de commande?
J'essaierais ça.
0