J'ai créé un script en bash qui devrait (normalement !) ajouter des lignes après une certaine ligne.
je m'explique :
J'ai un fichier qui contient :
toto
titi
tata
Je voudrais après titi ajouter ceci :
tutu
tito
J'ai donc créé le script suivant :
ed -s << STOP_ED >/dev/null
r ${FIC_MOODLE}
g/titi/s/titi/tutu^Mtito/g
w
q
STOP_ED
Mais ça marche pô ! :(
Enfin si, si je le fais à la main, mais pas dans un script.
Ca fait plusieurs heure que je suis dessus et je devient :pt1cable:
Comment faire ????
# une piste
Posté par Calim' Héros (site web personnel) . Évalué à 2.
# script ajoute.sh
# usage : ajoute.sh nomDuFichier
# effet : ajoute les ligne "tutu" et "tito" apres les lignes "titi"
sed -e 's/titi/titi^Mtutu^Mtito/g' < $1 >tmp_sed
mv tmp_sed $1
[^] # Re: une piste
Posté par geeko74 . Évalué à 1.
[^] # Re: une piste
Posté par Calim' Héros (site web personnel) . Évalué à 2.
[^] # Re: une piste
Posté par totof2000 . Évalué à 2.
[^] # Re: une piste
Posté par geeko74 . Évalué à 1.
[^] # Re: une piste
Posté par totof2000 . Évalué à 2.
[^] # Re: une piste
Posté par Calim' Héros (site web personnel) . Évalué à 2.
#!/bin/sh
# script ajoute.sh
# usage : ajoute.sh nomDuFichier
# effet : ajoute les ligne "tutu" et "tito" apres les lignes "titi"
sed -e 's/titi/titi\
tutu\
tito/g' < $1 >tmp_sed
mv tmp_sed $1
On notera bien le retour a la ligne apres les "\" dans la "ligne" de la commande sed
[^] # Re: une piste
Posté par geeko74 . Évalué à 1.
Mais j'ai un autre soucis du coup (snif ! je vais pô m"en sortir !)
Voici une ligne d'un fichier :
<?PHP print_footer('home'); ?>
Tout est sur une ligne.
Voici ce que j'obtient :
<?PHP print_footer('home'); ?>
require_once "$CFG->dirxoops/footer.php";
Or je voudrais obtenir ceci :
<?PHP print_footer('home');
require_once "$CFG->dirxoops/footer.php"; ?>
Le tout c'est que ?> soit après ce que j'ajoute (sur la même ligne ou après peu importe) sinon c'est pas pris en compte pour Apache et ya erreur.
[^] # Re: une piste
Posté par geeko74 . Évalué à 1.
Merci de ton aide !!!
[^] # Re: une piste
Posté par geeko74 . Évalué à 1.
sed -e 's/print_footer('home');/print_footer('home');require_once \"\$CFG-\>dirxoops/footer.php\";/g' < ${FIC_MOODLE} >${REP_OLD}/tmp_sed
[^] # Re: une piste
Posté par geeko74 . Évalué à 1.
sed -e 's/print_footer('home');/print_footer('home');^Mrequire_once \"\$CFG-\>dirxoops/footer.php\";/g' < ${FIC_MOODLE} >${REP_OLD}/tmp_sed
# Autre moyens ????
Posté par geeko74 . Évalué à 1.
Je plane completement...
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.