|
| Hvordan får man bash til følgende? Fra : Thomas Albech |
Dato : 20-04-01 09:25 |
|
Hej NG!
Jeg er bekendt med 'tr', men det jeg vil er at være i stand til at replace
en textstring i en lang række filer. Dvs. at jeg skal have bash til at tage
eks. '*.log' i et katalog erstatte alle forekomster af en string med en
anden og gemme filerne igen. HVORDAN?
Tak,
thomas
| |
Michael Lyngbøl (20-04-2001)
| Kommentar Fra : Michael Lyngbøl |
Dato : 20-04-01 09:37 |
|
On Fri, 20 Apr 2001 10:24:32 +0200, Thomas Albech wrote:
>
> Jeg er bekendt med 'tr', men det jeg vil er at være i stand til at replace
> en textstring i en lang række filer. Dvs. at jeg skal have bash til at tage
> eks. '*.log' i et katalog erstatte alle forekomster af en string med en
> anden og gemme filerne igen. HVORDAN?
Perl:
$ perl -pi.orig -e 's/foo/bar/g' *.html
Ovenstående replacer 'foo' med 'bar' i alle filer der matcher på *.html,
gemmer backup som <fil>.orig
--
Michael Lyngbøl -- Opinions are mine[TM];
CBR 600F
| |
Thomas Albech (20-04-2001)
| Kommentar Fra : Thomas Albech |
Dato : 20-04-01 09:51 |
|
Tak for hjælpen, det virker bare ikke når man bruger brackets ex.
perl -pi.orig -e 's/[ITE]Niller/[ITE]Test/g' *.log
/thomas
"Michael Lyngbøl" <lyngbol@c.dk> wrote in message
news:slrn9dvt9a.2jmj.lyngbol@tigerdyr.lyngbol.dk...
> On Fri, 20 Apr 2001 10:24:32 +0200, Thomas Albech wrote:
> >
> > Jeg er bekendt med 'tr', men det jeg vil er at være i stand til at
replace
> > en textstring i en lang række filer. Dvs. at jeg skal have bash til at
tage
> > eks. '*.log' i et katalog erstatte alle forekomster af en string med en
> > anden og gemme filerne igen. HVORDAN?
>
> Perl:
>
> $ perl -pi.orig -e 's/foo/bar/g' *.html
>
> Ovenstående replacer 'foo' med 'bar' i alle filer der matcher på *.html,
> gemmer backup som <fil>.orig
>
> --
> Michael Lyngbøl -- Opinions are mine[TM];
> CBR 600F
| |
Michael Lyngbøl (20-04-2001)
| Kommentar Fra : Michael Lyngbøl |
Dato : 20-04-01 10:09 |
|
On Fri, 20 Apr 2001 10:51:03 +0200, Thomas Albech wrote:
> Tak for hjælpen, det virker bare ikke når man bruger brackets ex.
>
> perl -pi.orig -e 's/[ITE]Niller/[ITE]Test/g' *.log
Ovenståended er et regulært udtryk. '[' skal escapes:
perl -pi.orig -e 's/\[ITE\]Niller/\[ITE\]Test/g' *.log
Læs http://usenet.dk/netikette/quote.html
--
Michael Lyngbøl -- Opinions are mine[TM];
CBR 600F
| |
|
|