karakterlánc törlése szövegfájlból

Fórumok

Helló!
Egy nagy szövegfájlból szeretném törölni minden sornak a 3.,4.,5.,6.,7. karakterét.
Azt hiszem, hogy sed-del meg lehet csinálni valahogy, csak nem tudom összerakni a kifejezést.
Előre is köszi, ha valaki közli velem!
De annak is örülnék, ha valaki mutatna egy normális leírást a sed-ről.
Üdv!

Hozzászólások

man sed
info sed

perldoc perlre

--


()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.

Itt nézz körül. egyébként meg


sed 's/^\(.\{2\}\).\{,5\}\(.*\)$/\1\2/'

A "mit?" megadásánál a sor két megmaradó részét megjelöljük, ezek a csere "mire?" részénél mint jelzett minta (\1 és \2) fognak szerepelni. A mit tehát úgy áll össze, hogy sor elején lévő első minta, ami tetszőleges karakterből pontosan kettő, a következő nem jelzett minta tetszőleges karakterből legfeljebb(!) öt, majd a második jelzett minta, ami tetszőleges karakterből nulla vagy bármennyi, majd pedig a sor vége.

A 3-7. karakterig terjedő részt azért "legfeljebb öt darab"-bal adtam meg, mert így a rövidebb sorokat is helyesen kezeli.

Fontos: a \-ről nem szabad megfeledkezni!

Köszönöm mindenkinek a hozzászólásokat!