hi, vóna egy kis problémám,
van néhány fájl, amit sedd-el egy kicsit át kéne alakítani. Az alakítás az már megy, csak az a baj, hogy a forrás fájlok azok html-ek, s az nem igazán jó ha a tag-ekben és lecserél valamit a sed.. valamiért a böngészők nem szeretik...
próbáltam a ranges cuccal (
'/</,/>/
...') cuccal, de az csak akkor akar működni, ha külön sorokban vannak, mert különben ha van egy < és egy > a sorban, akkor az egészen átmegy... akkor tegyük külön sorba őket gondoltam ez lett:
sed -e '/>/\n>\n/' -e '/</\n<\n/' | sed ...
ez szépen is működik, de aztán.. ott akadtam el, hogy hogy tegyem vissza őket egy sorba.. végül ez lett a vége:
sed -e 's/</\n<\n/g' -e 's/>/\n>\n/g' | sed -e '/>/,/</ y/abc/xyz/' | tr '\n' '\a' | sed -e 's/\a>\a/>/g' -e 's/\a<\a/</g' | tr '\a' '\n'
ronda, viszont működik, de nekem ez így nem igazán teccik... (ja, és az az y nem az ami kell, csak az eredeti egy kicsit hoszú...) tippek? meg lehet-e ez oldani sed-del rendesen, vagy inkább awk? de ahoz meg nagyon láma vagyok...
EDIT: hupsz, 2 g lemaradt...
- 1112 megtekintés
Hozzászólások
Az eredeti problema mennyire nagy titok?
Csak azert kerdezem, mert ez egy cseppet zavaros (asszem "s" is lemaradt)..
Mit szolnal mondjuk perl/php+regexp kombohoz? Perl-t direkt erre talaltak ki.. ha tul olvashatatlan, de weben otthonosabban erzed magad, akkor meg ajanlom a php pcre moduljat.
---------------------
int iPhone,iMac,iPod; // Apple using Hungarian notation :)
- A hozzászóláshoz be kell jelentkezni
"mert különben ha van egy < és egy > a sorban"
Ez alapján valami hasonlóra lessz szükséged szerintem: [^<>]
Egyébként tényleg perl-el érdemes még próbálkoznod, ha majd sed-el nem jön össze.
- A hozzászóláshoz be kell jelentkezni
hu.. perlben nem igazán vagyok otthon.. phpban már inkább... csak az a helyzet hogy már van egy bash script, ami letölt egy weblapot wgettel, majd sed, majd berakja az archivumba a dátummal, meg frissít egy symlinket... tehát mivel a bash-script többi részét nem akarom újraírni, tehát vagy írhatok még egy scriptet, vagy szórakozok tovább a sed-del... de lehet hogy megnézem azt a phps cuccot..
I hate myself, because I'm not open-source.
- A hozzászóláshoz be kell jelentkezni
perl-t is ugyan úgy meg lehet hívni parancssorból mint sed-et és regexp.-je is hasonló.
$ echo "alma" | perl -pe 's/alma/korte/'
korte
- A hozzászóláshoz be kell jelentkezni
jo, jo, jo... akkor legyen perl... tud valaki valami jo tutorialt perl-hez? mert még nem igazán foglalkoztam vele :( ...
I hate myself, because I'm not open-source.
- A hozzászóláshoz be kell jelentkezni
Na, én nem akartam rád tukmálni semmit. Csak azért írtam, hogy tudjál róla, hogy ugyan úgy be tudod építeni a bash scriptedbe mint sed-et. Szal ne ez tartson vissza tőle.
De ha leírnád a rendes problémát akkor talán többet tudnánk segíteni.
Tutoriallal meg tele van a google, talán ezzel érdemes kezdened: perlre - Perl regular expressions
- A hozzászóláshoz be kell jelentkezni
De ha leírnád a rendes problémát akkor talán többet tudnánk segíteni.
a problémám csak annyi, hogy a html filet kéne sed/perl/php/akármivel feldolgozni, csak nem szeretném, ha esetleg valamelyik html tag-ben cserélne le valamit.. tehát az < és > közti részt ki kéne hagyni az egészből... de most már lehet hogy meg tudom oldani...
I hate myself, because I'm not open-source.
- A hozzászóláshoz be kell jelentkezni