Gå til innhold

Slå sammen filer men trekke fra den ene?


Anbefalte innlegg

La oss si at jeg har to filer, A og B, med følgende format:

"cdartisttcdtitteln"

sagt på en annen måte vil hver linje matche m/(.*)t(.*)/

 

KORT: A er alle cd'ene av en artist som jeg har. B er alle cd'ene av alle artister (freedb). Jeg ønsker å se hvilke cd'er av artistene jeg allerede har album av, som jeg mangler.

 

Jeg kan da ta union av disse to filene med f.eks. 'cat A B >> U'.

Jeg kan ta snitt med f.eks. 'for field in 'cat A' ; do 'grep $field B >> S'; done'

bør kanskje legge til her at jeg betrakter $'t' som felt-separator, altså:

'oldifs=$IFS && IFS=$'t'$'n'; ... ; IFS=$oldifs', slik at $field blir cd-artist.

 

 

Men komplement (alle i A og B men ikke i A), er det en enkel måte å gjøre det på?

Antagelig vil det vel gå greit med 'for hver linje i S hvis ikke finnes i A legg til i K', men dette virker litt tungvint og oppfinning av kruttet på ny.

Så er det en lettere måte å gjøre det på, noe standard?

Lenke til kommentar
Videoannonse
Annonse

Hm.

 

Er ikke helt med, med prøver når jeg kommer hjem.

 

Men i tilfellet jeg ikke har forklart meg godt nok, la meg ta ett eksempel:

 

A inneholder KUN:

Michael JacksontHIStoryn

 

B inneholder BLANT ANNET:

...

Michael JacksontHIStoryn

Michael JacksontThrillern

...

 

 

Jeg ønsker KUN å få vist:

Michael JacksontThrillern

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...