View Full Version : Piccolo aiuto per due scriptini
VegetaSSJ5
08-03-2012, 13:24
Salve, mi servirebbe una mano con un paio di scriptini.
Ho un file di log. Dovrei controllare in automatico se nel contenuto del file c'è la scritta "http dwn done!" (possono esserci dei newline prima e dopo la scritta). Se è presente faccio qualcosa, altrimenti no...
Inoltre, ho un altro file con un log in formato html. Vorrei spostarlo in un file di testo sostituendo le stringhe "<br>" con i caratteri di newline.
Sapete aiutarmi?
Grazie! :D
nightborn
08-03-2012, 14:03
Salve, mi servirebbe una mano con un paio di scriptini.
Inoltre, ho un altro file con un log in formato html. Vorrei spostarlo in un file di testo sostituendo le stringhe "<br>" con i caratteri di newline.
questo dovrebbe bastarti (appena provato) :) :
cat file.html | sed -e s/\<br\>/\\n/g > file.txt
nightborn
08-03-2012, 14:17
sostituisci il "gatto" con quello che ti serve (e buon man grep) :)
#!/bin/bash
grep gatto miofile.txt > /dev/null
if [ $? = 0 ]; then
echo ok
else
echo failed
fi
exit
VegetaSSJ5
08-03-2012, 17:09
questo dovrebbe bastarti (appena provato) :) :
cat file.html | sed -e s/\<br\>/\\n/g > file.txt
grazie per entrambi i comandi!
riguardo questo <br>, alcuni sono fatti così <br>, altri così <br/>, altri così <br />
ho provato a modificare l'espressione regolare così s/\<br[\s*/]?\>/\\n/g
ma non va... sapresti dirmi come fare?
EDIT:
in effetti è sbagliata, però la seguente mi sembra giusta ma non va neanche questa: s/\<br[\s]*[/]?\>/\\n/g
Gimli[2BV!2B]
08-03-2012, 21:08
Penserei ad una cosa così:gimli@kwankey:~$ cat test.txt
<html>uno<br>due<br/>tre<br />quattro<br />cinque<br / >sei<br ><br rrr/> fine! <br um>!
gimli@kwankey:~$ sed -re 's.<br[[:space:]]*/?>.\n.g' test.txt
<html>uno
due
tre
quattro
cinque<br / >sei
<br rrr/> fine! <br um>!
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.