Tarvittaisiin tietoa kuinka tästä
diff new.txt old.txt
saataisiin ulos puhdas tulostus poikkeavista riveistä. Siis niin että se tulostaisi vain sen rivin sisällön, eikä mitään muuta.
diff new.txt old.txt
saataisiin ulos puhdas tulostus poikkeavista riveistä. Siis niin että se tulostaisi vain sen rivin sisällön, eikä mitään muuta.
Vastaukset 6
Vanhimmat
Katso ohjeita netistä, niitä kyllä löytyy.
Auttaisiko aloittajaa komento "diff --help" ?
Olkoon new.txt:ssä enemmän rivit a ja b verrattuna old.txt:hen.
$ cat new.txt
1
2
a
3
4
b
5
$ cat old.txt
1
2
3
4
5
Eroavat rivit new.txt:ssä saa käyttämällä apuna grep-komentoa:
$ diff new.txt old.txt | grep -oP '(?<=< ).*'
a
b
Erittäin hienoa, tämä on juuri se mitä tarvitsen, kiitoksia "Anonyymi", olit suureksi avuksi.
Onpa kummasti päin tiedostojen nimet aseteltu! Heh, ensimmäisellä yrityksellä tämä ei tästä syystä tehnyt mitään.. Pitäisikö näyttää erot tiedostojen välillä symmetrisesti, vaiko tiedostoon new lisätyt rivit verrattuna alkuperäiseen - niin kuin nyt?
Jos kääntää tuon komentohässäkän viimeisen '< ' muotoon '> ', niin näyttää mitä eroa vanhassa on. Grep toimii vain filtterinä diffin tulosteelle.