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
Fjerne mellomrom fra første feltet og skriver hele innholdet i andre tekstfil carriehoff Shell programmering og Skripting 3 11-11-2008 02:45
Sammenlign og erstatte innholdet i en fil kaustubh137 Shell programmering og Skripting 2 05-27-2008 07:56
sammenligne array innholdet med fil orahi001 UNIX for Dummies Spørsmål og svar 0 03-25-2008 05:44
Spørring: trenger bare å fjerne innholdet i filen uten å slette det namishtiwari Shell programmering og Skripting 3 02-04-2008 05:41
fjerne innholdet i en fil surjyap Sun Solaris 2 03-02-2006 04:02

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 11-17-2008
royalibrahim royalibrahim is offline
Registrert bruker
  
 

Bli Dato: juni 2007
Innlegg: 86
Sammenlign to filer og fjerne alt innholdet i en fil fra en annen

Hei,

Jeg har to filer, der den andre filen har nøyaktig det samme innholdet i den første filen med noen flere poster. Nå, hvis jeg ønsker å fjerne dem matchende linjer fra fil2 og skrive ut bare de ekstra innhold som den første filen ikke har, kan jeg bruke under naturlig kommandoen, vurdere F1 og F2 er to filer
Code:
var=`cat f1`
grep -v "$var" f2
men jeg trenger en mer optimal løsning med rask og pålitelig med mindre minneforbruk.

Jeg har funnet disse 2 linjer med kode, men det fungerer ikke for filer ha lengthier linjer:

Code:
fgrep -v -x -f f2 f1  
awk 'NR==FNR {b[$0]; next} !($0 in b)' f2 f1

Sist endret av royalibrahim; 11-18-2008 kl 12:51..
  #2 (permalink)  
Old 11-17-2008
joeyg's Avatar
joeyg joeyg is offline Forum Staff  
modérateur
  
 

Bli Dato: desember 2007
Sted: Hjemme i 17-tiden verdensmesteren Boston Celtics
Innlegg: 1311
Wink Kanskje diff-kommandoen vil fungere for deg

Code:
> cat file70
abc
def
ghi
jkl
mno
pqr
stu
vwx
yz
123
456
789
0

> cat file71
abc
def
ghi
jkl
mno
pqr
stu
vwx
yz
bash ksh
123
456
789
0
unix.com

> diff file70 file71 | grep "^>" | cut -c3-
bash ksh
unix.com
  #3 (permalink)  
Old 11-17-2008
Christoph Spohr Christoph Spohr is offline
Registrert bruker
  
 

Bli Dato: Sep 2008
Innlegg: 205
Hei,

å skrive ut de ulike linjene av to filer prøve:

Code:
comm -3 file1 file2
og for ytterligere informasjon

Code:
man comm
Vennlig hilsen

Chris
  #4 (permalink)  
Old 11-18-2008
royalibrahim royalibrahim is offline
Registrert bruker
  
 

Bli Dato: juni 2007
Innlegg: 86
Takk til dere alle for forslag. Men noen har noen awk, perl kode for å gjøre denne oppgaven?

Og også nedenfor perl Koden vil fjerne duplikat, ikke-sammenhengende linjer basert på det siste feltet uten sortering. Nå, fortell meg, hva skal jeg endre i denne koden for å skrive ut unike linjene i en fil ved bare ikke å se det siste feltet, men hele linjen (hele posten)?
Code:
perl -ane'print unless $_{$F[-1]}++'
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 12:00.


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