The UNIX and Linux Forums  

Go Back   UNIX och Linux Forum > Upp Forum > UNIX for Dummies Frågor & Svar
.
google unix.com



UNIX for Dummies Frågor & Svar Om du inte är säker på var att skriva en UNIX eller Linux fråga efter det här. Alla UNIX-och Linux-nybörjare välkomna!

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
Unix Arithmatic drift fråga datatyp fråga thambi Shell-programmering och Skript 23 02-19-2008 07:19
Behöver ersätter för sed dbsurf Shell-programmering och Skript 0 01-25-2008 06:47
Text utbyte mellan 2 filer Bobo UNIX for Dummies Frågor & Svar 3 09-10-2007 10:13
Awk / Sed En liner för text ersättning bishnu.bhatta UNIX for Dummies Frågor & Svar 5 03-26-2007 02:51
Ersätter använda sed handak9 UNIX for Dummies Frågor & Svar 5 07-13-2004 12:28

Closed Thread
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 denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 11-25-2008
sohaibs sohaibs is offline
Registered User
  
 

Join Date: Nov 2008
Inlägg: 4
Sed text ersätta fråga.

Hej,
Im försöker hitta och ersätta text i en UNIX-filen med sed.
Kommandot som jag har använt är

sed '/, null, / s / /, / g' Result.txt> result.tmp

för att ersätta ", null," med ",".
Men detta bara ersätter den första förekomsten av, noll, i varje rad. Jag vill göra det globalt.
Det fungerar bra om jag utesluter alla kommatecken.
Please help.
  #2 (permalänk)  
Old 11-25-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: februari 2007
Inlägg: 4.345
Borde vara något liknande:


Kod:
sed 's/,null,/, ,/g' result.txt > result.tmp

  #3 (permalänk)  
Old 11-25-2008
vino's Avatar
vino vino is offline Forum Staff  
Supporter (in vino veritas)
  
 

Join Date: februari 2005
Ort: Bangalore, Indien
Inlägg: 2.798
Citat:
Ursprungligen postat av sohaibs View Post
Hej,
Im försöker hitta och ersätta text i en UNIX-filen med sed.
Kommandot som jag har använt är

sed '/, null, / s / /, / g' Result.txt> result.tmp

för att ersätta ", null," med ",".
Men detta bara ersätter den första förekomsten av, noll, i varje rad. Jag vill göra det globalt.
Det fungerar bra om jag utesluter alla kommatecken.
Please help.
Innebär inte detta att fungera?


Kod:
sed -e "s/,null,/, ,/g" result.txt > result.tmp

  #4 (permalänk)  
Old 11-25-2008
sohaibs sohaibs is offline
Registered User
  
 

Join Date: Nov 2008
Inlägg: 4
sed -e "s /, null, /, / g" Result.txt> result.tmp
sed 's /, null, /, / g' Result.txt> result.tmp

Båda dessa uttalanden endast ersätta den första förekomsten av, null, att, i varje rad.
Kan det ske på något annat sätt? Im försöker ändra innehållet i en fil med ett shell script som första extrakter denna information och ändrar det lite.
  #5 (permalänk)  
Old 11-25-2008
Franklin52 Franklin52 is offline Forum Staff  
Moderator
  
 

Join Date: februari 2007
Inlägg: 4.345
Den bör fungera, skicka din fil med nummer parentes (markera koden och klicka på "#" ovanför redigeringsfönstret).

Hälsningar
  #6 (permalänk)  
Old 11-25-2008
zaxxon's Avatar
zaxxon zaxxon is offline Forum Staff  
Moderator
  
 

Join Date: Sep 2007
Ort: Tyskland
Inlägg: 2311
Båda sätten fungerar på mina lådor ... Även om kanske prova något liknande (även om jag tycker det är onödigt):

Kod:
sed -e :a -e 's/,null,/, ,/;ta' result.txt

Edit:
Bara såg länge exempel linje.
Med visat rad 2 sed kommandon fungerar inte på min lådor - Jag gissar på grund av den redan substituerade angränsande kommatecken av följande, null, null. Så loopen i sed kommer att vara ok.

Senast redigerad av zaxxon; 11-25-2008 vid 07:15.. Anledning: Lade till info
  #7 (permalänk)  
Old 11-25-2008
sohaibs sohaibs is offline
Registered User
  
 

Join Date: Nov 2008
Inlägg: 4

Kod:
2,520,DB_MSC_MIT,null,KBNY,BLAH,US,5876548,VBU3M.U,VZ0M.U,U,VZFSK,BK,0.772084,ER,10.0,1.0,A,P,1.0,0.0,2009-01-16T00:00:00 @Europe/London,0.0,35.0,To La,1.0,1.6936391,7.07878526,6.629309,242.30009,Amer,1.3309,0.0,0.0,0.0,922.808018,312.3315240926514338,29.83157600000000,574,37.53658120375646,0.0,0.0,0.0,1.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-26.10513536513008,0.0,-74951.16306028693,-26.10513536513008,-74925.0579249218,0.0,0.0,0.0,0.0,0.0,0.0,-237.22390960441317,0.0,4896.289228465125,-237.22390960441317,5133.513138069538,0.0,0.0,0.0,0.0,0.0,0.0,-4755.8670072606055,0.0,458181.9339556703,-4755.8670072606055,462937.8009629309,null,null,null,0.0,O,VZFRP JAN 09 35 P,null,null,1.0,null,VP35 1.0,null,null,null,O,BSK,BSK,null,null,DrFr,NY,NY,null,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2,0.0,0.0,0.0

Closed Thread

Komihåglista

Taggar
shell script, shell scripting, UNIX-skript, UNIX scripting basics

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 02:52.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0