Vi har laget to tekstfiler i arbeidsmappen til systemet vårt.
Det er på tide å bruke 'diff'-instruksjonen i et spørreområde for å vise forskjellen mellom begge filinnholdet. Vi prøver denne 'diff'-instruksjonen med begge filnavnene i en sekvens, dvs. én.txt først og deretter to.txt-fil. Kommandoen 'diff' viser oss forskjellen mellom begge filene som:
- Linjenummer i henhold til den første tekstfilen.
- Spesialtegn/symboler for å fortelle oss om forskjellen som endre, legge til, slette.
- Linjenummer i henhold til den andre tekstfilen.
I vår første illustrasjon utdyper vi 'a'-symbolet blant linjenumrene til 'diff'-kommandoutgangen; 'a' brukes som forkortelsen for 'Legg til'. Bruken av 'cat'-instruksjonen med begge filnavnene i søkeområdet viser innholdet i hver tekstfil separat, dvs. one.txt og two.txt. Vi har totalt 4 linjer i den første filen mens den andre filen inneholder 5 linjer. Linje 1 kommer i tillegg.
Deretter prøver vi 'diff'-instruksjonen på terminalspørreområdet etterfulgt av navnene på filene - one.txt og two.txt. Utførelsen av denne instruksjonen viser '0a1' som utdata sammen med linje 1 fra den andre filen som er en ekstra linje i den andre filen. Den numeriske verdien '0' brukes for linje 0 eller før linje 1 i den første filen, dvs. one.txt. Symbolet 'a' betyr 'legg til'. Til slutt betyr den numeriske verdien '1' den første linjen i den andre filen. Blandingsutgangen '0d1' betyr at linje 1 i den andre filen 'two.txt' skal legges til øverst i den første filen 'one.txt' før den første linje to gjør begge filene like.
Nå oppdaterer vi begge filene for å se en annen illustrasjon. Den første filen 'one.txt' inneholder 4 linjer og den andre filen 'two.txt' inneholder bare 3 linjer. Den eneste forskjellen for disse filene er bruken av en ekstra linje i den første filen, dvs. linje 1 = 'mandag' som ikke er i den andre filen. Etter å ha prøvd 'diff'-instruksjonen for de oppdaterte tekstfilene, får vi '1d0' som utdata. Og den første linjen fra den første filen vises. I '1d0' betyr 1 at den første linjen fra filen 'one.txt' skal slettes (i henhold til symbolet 'd'), og 0 betyr at den andre filen ikke fikk noen oppdatering. Til slutt vises linje 1 fra den første filen 'one.txt' for den klare forskjellen.
På samme måte kan 'diff'-kommandoen vise en forskjell mellom linjene i to filer. Derfor oppdaterer vi begge tekstfilene igjen. Denne gangen inneholder den første filen 5 linjer mens den andre filen bare inneholder 4. Den eneste forskjellen er bruken av en ekstra linje i one.txt som er linje 3. Diff-kommandoen som brukes på begge filene i terminalen viser en ut '3d2' sammen med linje 3 fra den første filen 'one.txt'. Denne utgangen viser at linje 3 fra den første filen 'one.txt' bør slettes slik at vi kan synkronisere begge filene på linje 2 i den andre filen. Den forskjellige linjen '3' vises slik at vi kan få en klar ide om forskjellen.
La oss ta en klar og dypere titt på utgangen. 1,5c1,2-utdataene fra følgende bilde viser at linjene 1 til 5 i en første fil (one.txt) bør endres med linje 1 til 2 i en andre fil (two.txt). Det betyr at de første 5 linjene (1 til 5) i one.txt-filen bør endres og erstattes med de to første linjene (1, 2) i den andre filen 'two.txt' for å gjøre det samme. Til slutt vises alle 5 linjene fra den første filen som bør erstattes med de viste 2 linjene i den andre filen. Dette er hvordan symbolet 'c' forteller forskjellen mellom to filer - ingen linje er lik i begge filene.
Kommandoen 'diff' lar deg få utdata i en kontekstform. Tenk deg at du har de samme to filene med følgende data i disse filene. Konteksten rundt utdataene vil være å vise hovedforskjellen mellom de totale enkle filene som vises i bildet nedenfor. Nå har vi 5 linjer i den første filen 'one.txt' og 4 linjer i den andre filen 'two.txt'.
For å få den kontekstbaserte utgangen av 'diff'-instruksjonen, må vi bruke '-c'-alternativet i 'diff'-kommandoen. Ved å bruke de tidligere oppdaterte filene i denne 'diff'-kommandoen, får vi følgende utdata - dato, dag, sammen med ekstra informasjon om tekstopprettingen i filene. De 5 linjene fra one.txt-filene vises. Spesielt er den tredje linjen uthevet ved å bruke tegnet '-' for å bare legge den til en annen fil.
Konklusjon
Vi prøvde å kort forklare alt om 'diff'-instruksjonen. For dette oppdaterte vi tekstfilene våre hver gang og fikk en oppdatert utgang for å legge til, fjerne og endre dataene i en fil. Introduksjonen forklarte formålet med å bruke 'diff'-kommandoen i Linux og hvordan du bruker den for Linux.