The UNIX and Linux Forums  


Go Back   UNIX og Linux Forums > Top Forums > Shell programmering og Skripting
.
google unix.com



Shell programmering og Skripting Post spørsmål om ksh, csh, SH, Bash, Perl, PHP, SED, awk og ANDRE shell scripts og Shell skriptespråk her.

Mer UNIX og Linux Forum Emner Du kan finne nyttig
Tråd Tråd startet Forum Svar Siste innlegg
Skifte siste data for hver linje Ina fil jisha Shell programmering og Skripting 6 08-04-2008 08:47
Bytte slutten av linje med "i et UNIX-fil The Observer Shell programmering og Skripting 2 05-17-2008 06:20
erstatte en rekke ukjente charecters i en fil malavm Shell programmering og Skripting 12 07-26-2007 05:25
Bytte tegn i filen med linjeskift johnemb Shell programmering og Skripting 10 04-26-2007 08:38
erstatter første linjen eller linjene i en fil Terrible UNIX for Advanced & ekspertbrukere 3 06-28-2006 09:23

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 denne tråden Rate Thread Visningsmoduser
  #1 (permalink)  
Old 06-05-2008
maxmave maxmave is offline
Registrert bruker
  
 

Bli Dato: april 2008
Innlegg: 21
Utskifting av en linje i en fil - Hjelp!

Jeg har et problem i følgende kode ...

Code:
while read line
do
   #Get Line Number 
   OLDLINE=`sed -n $Lineno $filename`
   echo "Un Changed Line : "$OLDLINE
   echo "Enter a New Pattern : "
   read NewPattern <&1
   echo "NewPattern :"$NewPattern 
   NEWLINE=`cat $filename | sed -n $Lineno | sed s/$OldPattern/$NewPattern/`
   echo $NEWLINE
   LINECHANGE=`sed s/$OLDLINE/$NEWLINE/ $filename`
   echo $LINECHANGE
   ChangedLine=`sed -n $Lineno $filename`
   echo "Changed Line : "$ChangedLine
done < $INT_FILE
Jeg prøver å lese en linje fra en fil og får den linjen og endre et mønster i linjen, og jeg vil gjerne erstatte
GAMMEL tråd med den nye linja.

Jeg har problem i følgende linje
Code:
LINECHANGE=`sed s/$OLDLINE/$NEWLINE/ $filename`
det GAMLE Line er ikke endret i ny linje i filen.

er det noen problemer med kommandoen i gave eller bør jeg trenger å korrigere den

Kan noen vennligst hjelpe.


Takk

Rahul

Sist endret av Yogesh Sawant; 06-05-2008 kl 02:06.. Årsak: lagt til kode tags
  #2 (permalink)  
Old 06-05-2008
jaduks's Avatar
jaduks jaduks is offline
Registrert bruker
  
 

Bli Dato: Aug 2007
Beliggenhet: Assam, India
Innlegg: 166
Se på dette:

Code:
$ cat ea.txt
root 1933 1923 localhost calm 32rhewr

$ A=root

$ B=ROOT

$ sed 's/$A/$B/g' ea.txt
root 1933 1923 localhost calm 32rhewr

**No change above

So use double quotes instead of single quote: 

$ sed "s/$A/$B/g" ea.txt
ROOT 1933 1923 localhost calm 32rhewr

So 

LINECHANGE=`sed s/$OLDLINE/$NEWLINE/ $filename`

should be something like this:

LINECHANGE=`sed "s/$OLDLINE/$NEWLINE/" $filename`
/ / Jadu
Closed Thread

Hugseliste

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 07:21.


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