Bonjour à tous,
Je vous préviens, ce souci relève d'un phénomène paranormal !!
Voilà, pour faire simple, j'ai un script qui s’exécute tous les soirs à 3h.
A la fin, il est censé trier un fichier d'une certaine manière :
Jusque là ok, le souci maintenant, c'est que cette commande ne renvoi pas tout à fait la même chose (elle inverse deux lignes) quand je la tape en console et lors de son exécution automatique via crontab à 3h.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 #!/opt/bin/bash #On trie par ordre alphabétique le fichier mv "$TO" "$TXT" cat "$TXT" | sed "s/#/ 000#/g;s/\&/0&/g;s/'/1'/g;s/-/0-/g;s/\([[:blank:]]\)/\10/g" | $SORT -fk 1,1 | sed "s/0&/\&/g;s/1'/'/g;s/0-/-/g;s/\([[:blank:]]\)0/\1/g;s/ 000#/#/g" > "$TMP" mv "$TMP" "$TXT"
En fait c'est même pire, si je tape la commande au dessus dans la console bash, mes deux lignes sont bien triées, et si je lance le batch à la main, une fois terminé, les lignes sont encore bien triées, c'est uniquement la nuit que ça merdois.
La fameuse variable SORT que vous voyez était ma première idée, un path mal déclaré (pourtant fait) qui prendrait en compte un mauvais sort, du coup je le force à prendre le bon => /opt/bin/sort
Et je me suis dit c'est sur ça peut être que ça, et ce matin, hop je revois mes deux lignes en question mal triées, je relance à la main, et de suite elles se retrient bien...
Bref voici les deux lignes en question bien triées :
Et donc les deux lignes après traitement via crontab :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 2012#134539 2012 - Terre Brulee#144653
Voici la ligne crontab au cas ou...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 2012 - Terre Brulee#144653 2012#134539
Je pense au final que ce n'est plus le script en cause, il fonctionne tout seul, mais la je ne comprend plus...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 # Script 11 0 3 * * * root /usr/syno/scripts/script.sh
Quelqu'un aurait-il une idée à ce souci svp ?
Partager