06. oktober 2003 - 12:52
Der er
11 kommentarer og 2 løsninger
Hjælp til sed med reg.exp
Hej Reg.Experter :) Jeg sidder og skal have lavet noget replace på nogen filer... Regel 1: Filens øverste del må ikke røres (linie 1) Regel 2: teksten `foo` skal erstattes med `bar` Jeg har prøvet noget i retning af: sed s/foo/bar/ file Det virker også fint, men hvordan får jeg regel 1 indført? Bagefter dette, skal linie 1 i filen have erstattet teksten `flaf` med `paphat`. Og kun linie 1. Any ideas?
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
06. oktober 2003 - 13:00
#1
måske ala (utestet) sed '2,10s/foo/bar/p' file sed '1,1s/flaf/paphat/p' file
06. oktober 2003 - 13:03
#2
sed 'x,y hvor x er startlinie og y er slutlinie
06. oktober 2003 - 13:06
#3
Det virker fint. Bortset fra at jeg får den samme linie lagt ind 2 gange...
06. oktober 2003 - 13:08
#4
wow ;) så når du kører det kopierer den samtlige linier til at være der to gange ?
06. oktober 2003 - 13:10
#5
Nej, underligt nok er det kun den første linie... Der står så i min fil 1: paphat <-- rigtigt 2: paphat <-- forkert
06. oktober 2003 - 13:10
#6
Du kan også prøve denne - så bliver sed kun kaldt en gang: sed -e '1s/flaf/paphat/g' -e '1!s/foo/bar/g' file
06. oktober 2003 - 13:13
#7
morp >> sikkert 1,1 der skaber problemet, prøv venne's løsning, den er mere stueren
06. oktober 2003 - 13:25
#8
'1s/flaf/paphat/g' <-- Kun linie? '1!s/foo/bar/g'<-- Alle linier, undtaget 1?
06. oktober 2003 - 13:26
#9
Ja, '1' angiver linie 1, '1!' angiver alle andre linier end linie 1.
06. oktober 2003 - 14:36
#10
Er der nogen der ligger svar?
06. oktober 2003 - 14:39
#11
.
06. oktober 2003 - 14:41
#12
Ok, men virker det som det skal?
06. oktober 2003 - 14:55
#13
Jeps, det virker 100% som det skal
Kurser inden for grundlæggende programmering