j'apprends le BASH avec un livre. Il s'agit aujourd'hui de la commande sed.
J'ai un fichier foo.txt
thierry@toto-PC:~> cat foo.txt
The quick brown fox jimped over the laxy dog.
Après un script sed, je dois obtenir ceci:
Voilà mon script sed:
# sed script: HTML Markup hinzufügen um einen Satz
1 i<html>\
\t<head>\
\t\t<title>Mispelled HTML file<\/title>\
\t<\/head>\
\t<body>\
\t\t<p>
s/^/\t\t\t/
a\
\t\t<\/p>\
\t<\/body>\
<\/html>
Et voilà le résultat:
thierry@toto-PC:~> sed -f html_MARKUP.sed foo.txt
<html>
<head>
<title>Mispelled HTML file</title>
</head>
<body>
<p>
The quick brown fox jimped over the laxy dog.
</p>
</body>
</html>
C'est pas si mal
QUESTION:
J'aimerais que "The quick brown fox jimped over the lazy dog." soit aligné avec les balises <p> et </p>.
J'aimerais aussi, si possible, que la méthode utilisée évite de chercher "The" ou <p>
Comment faire ?
Pourquoi ? Car si la phrase du fichier foo.txt est différente, alors le script ne marche plus…
Mais si ce n'est pas possible, votre aide, votre solution est tout de même intéressante !
Merci pour votre aide
- Edité par DenebeDenebe 12 janvier 2021 à 14:44:43
il faudrait ne pas mettre les balises de début et de fin paragraphe dans l'insertion et dans l'ajout, mais les mettre dans la substitution : s/.*/<p>&<\/p>
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
oui, je m'en suis entre temps rendu compte (en bidoullant). J'arrive à ceci, il me manque un petit quelque chose:
Script:
# sed script: HTML Markup hinzufügen um einen Satz
1 i<html>\
\t<head>\
\t\t<title>Mispelled HTML file<\/title>\
\t<\/head>\
\t<body>
$ s/^/\t\t<p>/;s/$/<\/p>/;
$ a\t<\/body>\
<\/html>
Résultat:
thierry@toto-PC:~> sed -f html_MARKUP.sed foo.txt
<html>
<head>
<title>Mispelled HTML file</title>
</head>
<body>
<p>The quick brown fox jimped over the laxy dog.</p>
t</body>
</html>
Je regarde ton indication… (je répondrai plus tard très probablement, je dois bientôt y aller…)
- Edité par DenebeDenebe 12 janvier 2021 à 15:44:24
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
script sed, insertion à la fin d'une ligne.
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
...
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique
Validez la réponse utile « Un problème clairement exposé est à moitié résolu. » Pas de MP technique