The UNIX and Linux Forums  


Go Back   UNIX og Linux Forums > Top Forums > UNIX for Advanced & ekspertbrukere
.
google unix.com



UNIX for Advanced & ekspertbrukere Expert-til-ekspert. Lær avanserte UNIX UNIX kommandoer, Linux operativsystem, systemadministrasjon, programmering, Shell, Shell Scripts, Solaris, Linux, HP-UX, AIX, OS X, BSD.

Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
samsvarer nærmeste bogu0001 UNIX for Dummies Spørsmål og svar 1 02-13-2009 04:42
mønsteret samsvarer tostay2003 Shell programmering og Skripting 3 12-31-2008 01:47
awk eller sed for å finne nærmeste mønsteret til en linje nummer alirezan Shell programmering og Skripting 1 10-11-2008 07:08
Hvordan kan jeg mønsteret som samsvarer med et felt med awk? someone123 Shell programmering og Skripting 4 06-03-2008 09:08
mønsteret samsvarer og substitusjon, kan du hjelpe? frustrated1 Shell programmering og Skripting 4 02-20-2006 08:48

 
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Søk i denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 06-30-2009
sudheer1984 sudheer1984 is offline
Registrert bruker
  
 

Bli Dato: juni 2009
Innlegg: 3
sed match nærmeste / nærmeste pattern

Alle
jeg sliter med å raplace noe tekst på en linje mellom to (nærmest) mønstre,
Code:
line="/home/usr/bin/:/home/usr/devuser,n1.9/bin:/home/usr/root/bin"
jeg vil erstatte "devuser, n1.9" med "NEWVAL", i utgangspunktet all tekst fra «devuser" til nærmeste '/' med noen nye teksten.

Jeg prøvde følgende
Code:
echo $line | sed 's/devuser.*\//NEWVAL\//'
Jeg får / home / usr / bin /: / home / usr / NEWVAL / bin "

hvor jeg venter
/ home / usr / bin /: / home / usr / NEWVAL / bin: / home / usr / root / bin "

jeg vet sed vil matche den lengste mulige mønster, jeg prøvde dette også
Code:
echo $line | sed 's/devuser.*[^\/]/NEWVAL/'
men fortsatt uten hell

hjelp vil bli verdsatt.

Takk på forhånd.

---------- Post oppdatert kl 02:13 ---------- forrige oppdatering var ved 01:30 ----------

Hei folkens,
fant noe
Code:
echo $line | sed 's/devuser[^\/]*/NEWVAL/'
gir meg den forventede output.

noen andre forslag er velkomne.

Sist endret av otheus; 07-02-2009 kl 04:59.. Årsak: lagt til kode tags
Bits tildelt / Belastet sudheer1984 for dette innlegget
Dato Bruker Kommentar Beløp
07-02-2009 otheus oppslaget egen løsning 500
 

Hugseliste

Tags
sed nærmeste mtach mellom to ord

Thread Tools Søk i denne tråden
Søk i denne tråden:

Avansert søk
Visningsmoduser Ranger denne tråden
Ranger denne tråden:

Innleggsaktivitet Regler
Du kanskje ikke poste nye tråder
Du kanskje ikke poste svar
Du kanskje ikke post vedlegg
Du kanskje ikke redigere innleggene dine

BB-kode er
Smilefjes er
[IMG] koden
HTML-koden Av
Pingbacks er
Refbacks er




Alle klokkeslett er GMT -4. Nå er klokken 12:58.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Language Translations Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX og Linux Forums Content Copyright © 1993-2009. All Rights Reserved.Ad Management by RedTyger

Content Relevant nettadresser av vBSEO 3.2.0