bonsoir,
en faite dans le tmp_file je met le résultat d'un ls -lat
et je veux remplacer "sep" par "09" exemple pour le mois de septembre
sous le serveur unix ou j'ai développé ce shell il fonctionne sans probleme
or sur mon serveur linux ca $%#&! ....
je neparviens pas a faire fonctionner la commande suivante
sed -f $HOME/recup_bon_mois.sed $HOME/$TMP_FILE
j'ai l'erreur suivant :
sed: file /home/dunkan/bin/recup_bon_mois.sed line 1: Unknown option to 's'
la version
GNU sed version 3.02
_________________
variables et script :
HOME=/home/dunkan/bin
TMP_FILE=tmp_recup
contenu du fichier recup_bon_mois.sed
s/Jan/01/g
s/jan/01/g
s/janv/01/g
s/Feb/02/g
s/feb/02/g
s/févr/02/g
s/fév/02/g
s/Mar/03/g
s/mar/03/g
s/mars/03/g
s/Apr/04/g
s/apr/04/g
s/avr/04/g
s/May/05/g
s/may/05/g
s/mai/05/g
s/Jun/06/g
s/jun/06/g
s/juin/06/g
s/Jul/07/g
s/jul/07/g
s/juil/07/g
s/Aug/08/g
s/aug/08/g
s/août/08/g
s/Sep/09/g
s/sep/09/g
s/sept/09/g
s/Oct/10/g
s/oct/10/g
s/oct/10/g
s/Nov/11/g
s/nov/11/g
s/nov/11/g
s/Dec/12/g
s/dec/12/g
s/déc/12/g
# Juste comme ça
Posté par Pascal Terjan (site web personnel) . Évalué à 3.
# Charset ?
Posté par Obsidian . Évalué à 3.
mais, si tu as récupéré ton script directement sur l'autre machine, il est possible qu'il y ait des caractères en trop à la fin de la ligne, ou bien un retour chariot pas codé comme il faut ...
# Hum...
Posté par Gyro Gearllose . Évalué à 2.
Lorsque j'ai copié-collé ton code depuis ton message vers un fichier de test sur ma machine, j'ai remarqué un espace avant chaque s/ de tes commandes sed, c'est peut-être de là que ça vient.
Par ailleurs, c'est pas un peu bourrin de vouloir passer en revue toutes les possibilités de la sorte ?
Genre, pour le mois de janvier, tu sais que ça commence au moins par jan, peu importe la casse, donc, j'ai essayé ça :
s/[jJ][aA][nN].*/01/
Et ça fait deux ou trois lignes de gagnées.
Sinon, mais là, c'est out of topic complet, pour avoir la date des fichiers dans un autre format que celui par défaut, lors de la sortie de la commande ls -l, tu peux utiliser l'option --time-style
Par exemple, lors d'un ls -lat --time-style='full-iso', j'obtiens des lignes dans ce genre sur ma machine :
drwxr-xr-x 41 david users 4096 2004-10-02 10:44:38.000000000 +0000 .
-rw------- 1 david users 6096 2004-10-02 10:36:24.000000000 +0000 .viminfo
drwx------ 8 david users 4096 2004-10-02 10:31:44.000000000 +0000 Mail
-rw-r--r-- 1 david users 670118 2004-10-02 10:31:18.000000000 +0000 .fonts.cache-1
-rw------- 1 david users 11792 2004-10-01 23:02:41.000000000 +0000 .bash_history
Voilà....
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.