----- Original Message -----
From: "anne aublanc" <anne.aublanc@???>
To: <guilde@???>
Sent: Saturday, November 27, 2004 9:35 AM
Subject: remplacer de caractères dans une chaine
| bonjour,
|
| J'ai besoin de remplcer les / en \/
|
| pour cela :
| s/\//\\\//
|
| mais cela ne fonctionne pas : erreur!
|
| La chaine que je dois modifier par exemple :
| "/home/JOB.done /home/JOB.suspended"
| =>
| "\/home\/JOB.done \/home\/JOB.suspended
|
Merci à tous...
Cela ne résout pas complètement mon problème
J'ai un fichier avec la liste des enregistrements qui ont sont ajoutés au
fur à mesure des demandes.
Je traite ce fichier par cron toutes les x minutes...
le traitement cron :
lire chaque ligne du fichier (ok)
traiter la demande (ok)
et supprimer la ligne qui vient d'être traitée (non ok)
Je n'arrive pas à supprimer cette ligne!
le script :
#!/bin/sh
home=/home/e-smith/files/ibays/fax-voice1/html/fax
config=$home/filesuspendu
# lire le fichier
cat $config | while read line # ok
do
command=`echo $line ` # ok
echo -$command- # ok
mv $command #ok
command1=`echo $command | sed 's/\//\\\\\//g'`
# command1=`echo $command | sed 's_/_\\/_g'`
echo -$command1-1-
command2="perl -wpi -e "s/$command1//g"' $config;"
echo -$command2-2-
$command2
done
les données du fichier :
/var/spool/fax/outgoing/F000001/JOB.done
/var/spool/fax/outgoing/F000001/JOB.suspended
l'exécution :
-/var/spool/fax/outgoing/F000001/JOB.done
/var/spool/fax/outgoing/F000001/JOB.suspended-
-\/var\/spool\/fax\/outgoing\/F000001\/JOB.done
\/var\/spool\/fax\/outgoing\/F000001\/JOB.suspended-1-
-perl -wpi -e 's/\/var\/spool\/fax\/outgoing\/F000001\/JOB.done
\/var\/spool\/fax\/outgoing\/F000001\/JOB.suspended//g'
/home/e-smith/files/ibays/fax-voice1/html/fax/filesuspendu;-2-
Can't find string terminator "'" anywhere before EOF at -e line 1.
si je tape la cde perl en ligne de cde :
perl -wpi -e 's/\/var\/spool\/fax\/outgoing\/F000001\/JOB.done
\/var\/spool\/fax\/outgoing\/F000001\/JOB.suspended//g'
/home/e-smith/files/ibays/fax-voice1/html/fax/filesuspendu;
Cela m'efface bien la ligne... sauf le retour chariot...
Il y a peut-être des choses plus simple pour effacer une ligne d'un fichier!
anne