|
From: | T.Collons |
Subject: | [shell-script-pt] Ayuda con SED |
Date: | Sat, 21 Mar 2020 00:43:17 +0100 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.6.0 |
Hola a todos
Tengo un problema, con el que ya no se como solucionar:
Quiero añadir código html a un fichero de texto para poder enviarlo por email, estoy intentando hacerlo con SED y casi lo he conseguido, pero me queda un paso que me tiene loco.
Aquí os pongo el fichero de texto original, que recojo de Calc con cvs
1 - ;Instal·lació Dispositius; Anul·lada; NIU
93xxxxxxx;TLA LI-VI;;;;;Comunicat a la persona usuària que no
es fan tasques que no siguin prioritàries a fi de no
contagiar-los o contagiar-nos. Se l’informa que un cop passat
l’estat d'emergència sanitària es tornara a programar la
visita normalment.;Comunicat a la persona usuària que no es
fan tasques que no siguin prioritàries a fi de no
contagiar-los o contagiar-nos. Se l’informa que un cop passat
l’estat d'emergència sanitària es tornara a programar la
visita normalment.
2 - ;Manteniment Dispositius; Anul·lada per Central; NIU 6xxxxxxx;TLA
LI-VI;;;;;Comunicat a la persona usuària que no es fan tasques
que no siguin prioritàries a fi de no contagiar-los o
contagiar-nos. Se l’informa que un cop passat l’estat
d'emergència sanitària es tornara a programar la visita
normalment.;Comunicat a la persona usuària que no es fan
tasques que no siguin prioritàries a fi de no contagiar-los o
contagiar-nos. Se l’informa que un cop passat l’estat
d'emergència sanitària es tornara a programar la visita
normalment.
3 - ;Instal·lació Dispositius; Tasca finalitzada OK; NIU 6xxxxxxx;TLA
LI-GSM;;;;;Comunicat a la persona usuària que no es fan
tasques que no siguin prioritàries a fi de no contagiar-los o
contagiar-nos. Se l’informa que un cop passat l’estat
d'emergència sanitària es tornara a programar la visita
normalment.;Comunicat a la persona usuària que no es fan
tasques que no siguin prioritàries a fi de no contagiar-los o
contagiar-nos. Se l’informa que un cop passat l’estat
d'emergència sanitària es tornara a programar la visita
normalment.
4 - ;Instal·lació Dispositius; Anul·lada per Central; NIU 93xxxxxxx;TLA
LI-GSM;;;;;Comunicat a la persona usuària que no es fan
tasques que no siguin prioritàries a fi de no contagiar-los o
contagiar-nos. Se l’informa que un cop passat l’estat
d'emergència sanitària es tornara a programar la visita
normalment.;Comunicat a la persona usuària que no es fan
tasques que no siguin prioritàries a fi de no contagiar-los o
contagiar-nos. Se l’informa que un cop passat l’estat
d'emergència sanitària es tornara a programar la visita
normalment.
5 - ;Canvi Domicili; Tasca finalitzada OK; NIU 93xxxxxxx; TLA
LI-VI;;;;;;
6 - ;Desconnectat; Tasca finalitzada OK; NIU 6xxxxxxx; TLA
LI-GSM;;;;;;
7 - ;Manteniment Dispositius; Anul·lada per Central; NIU 6xxxxxxx;;;;;;Comunicat
a la persona usuària que no es fan tasques que no siguin
prioritàries a fi de no contagiar-los o contagiar-nos. Se
l’informa que un cop passat l’estat d'emergència sanitària es
tornara a programar la visita normalment.;Comunicat a la
persona usuària que no es fan tasques que no siguin
prioritàries a fi de no contagiar-los o contagiar-nos. Se
l’informa que un cop passat l’estat d'emergència sanitària es
tornara a programar la visita normalment.
Cada linea empieza con un numero y en función de los datos tiene mas o menos campos separados por ;
Ahora mismo necesito tres lineas de código para enviar el correo
y son estas.
Aquí genero el primer fichero con código una parte de código html
incluido
cat
~/Documents/Tele/temps-2.csv | sed
-r 's/-\ ;/-\ /g; s/\ +/\ /g;
s/(.*;[^;]+);.*/\1./;G;
s/\x0A/<\/strong><\/font><\/span><p><\/div>\x0A\x0A<div>/g;s/1
-/<p><div>1
-/;s|(.*);(.*);(.*);(.*);(.*);(.*);(.*);(.*);(.*)|\1;\2;\3;\4;\5;\6;\7;\8<span><font
color=#0000ff
size=2em><strong>\9<\/strong><\/font><\/span>|'| sed -r 's/Tasca\ finalitzada\
OK/<span><font color=#0000ff
size=2em><strong>Tasca\ finalitzada\
OK<\/strong><\/font><\/span>/g;s/Tasca\
pendent/<span><font color=#ff0000
size=2em><strong>Tasca\
pendent<\/strong><\/font><\/span>/g;s/Anul·lada
per Central/<span><font color=#ff0000
size=2em><strong>Anul·lada per
Central<\/strong><\/font><\/span>/g;s/Anul·lada/<span><font
color=#ff0000
size=2em><strong>Anul·lada<\/strong><\/font><\/span>/g;'
> ~/Documents/Tele/temp-3.html
Aquí recojo el segundo archivo y intento que el tercer campo reciba el código html, pero solo ocurre en las lineas 5 y 6 en las demás el campo que recibe el código html es el cuarto y no entiendo porque.
cat
temp-3.html | sed -r 's/;+/;\ /g' | sed -r 's|(.*);(.*);(.*);|\1\2;<span><font
color=#0000ff
size=2em><strong>\3<\/strong><\/font><\/span>;|'
> temp-4.html
mail -s "temp-4.html"
address@hidden -a"Content-Type: text/html;
charset=\"utf-8\"" < ~/Documents/Tele/temp-4.html
El ejemplo de lo que quiero que se reciba por correo ha de ser
asi
6 - Desconnectat; Tasca
finalitzada OK; NIU 6xxxxxxx;
TLA LI-GSM
7 - Manteniment Dispositius; Anul·lada
per Central; NIU 6xxxxxxx; TLA LI-GSM ;Comunicat a la persona usuària que no es fan
tasques que no siguin prioritàries a fi de no contagiar-los
o contagiar-nos. Se l’informa que un cop passat l’estat
d'emergència sanitària es tornara a programar la visita
normalment.
Y lo que se recibe es esto
6 - Desconnectat; Tasca
finalitzada OK; NIU 6xxxxxxx;
TLA LI-GSM
7 - Manteniment Dispositius; Anul·lada
per Central; NIU 6xxxxxxx; TLA
LI-GSM ;Comunicat
a la persona usuària que no es fan tasques que no siguin
prioritàries a fi de no contagiar-los o contagiar-nos. Se
l’informa que un cop passat l’estat d'emergència sanitària
es tornara a programar la visita normalment.
Agradeceré cualquier sugerencia. Gracias y perdon por el rollo.
Pere
------------------------------------
AVIS LEGAL
Nota de confidencialitat: Aquest missatge podria contenir missatges d'empresa i altre informació confidencial tutelada per les lleis de Europea i altres estats, Si Vostè el rep per error o sense ser una de les persones esmenades a la capçalera, haurà de destruir-lo sense copiar-lo ni revelar-l'ho o qualsevol altre acció relacionada amb el contingut del missatge i notificar-ho per correu electrònic a l'emissor del missatge.
Les persones o entitats que incompleixin els deures de confidencialitat podran ésser perseguides davant dels Tribunals de Justícia sota l'empar de la legislació civil, penal i administrativa nacional i internacional.
Gracies per la seva cooperació.
------------------------------------
LEGAL NOTICE
Confidentiality notice: This mail may include business and other confidential information protected under the laws of and other territories. if you are not one of the intended recipients of the message, you are legally obliged to delete the message content. Furthermore, you are kindly requested to report immediately the incident to the sender.
Breach of confidentiality duties is a serious criminal offence in and other territories. Offenders shall be legally prosecuted worldwide.
Thank you for your cooperation.
[Prev in Thread] | Current Thread | [Next in Thread] |