Primjeri Linux sdiff naredbe za početnike u Linuxu
U jednom od naših ranijih članaka objasnili smo oko 9 najboljih alata za usporedbu i razliku datoteka (Diff) za Linux sustave. Naveli smo mješavinu alata naredbenog retka i GUI alata za usporedbu i pronalaženje razlika između datoteka, od kojih svaka ima određene značajke. Još jedan koristan diff uslužni program za Linux zove se sdiff.
Pročitajte također: Kako pronaći razliku između dva direktorija pomoću alata Diff i Meld
sdiff je jednostavan uslužni program naredbenog retka za prikazivanje razlika između dvije datoteke i interaktivno spajanje. Jednostavan je za korištenje i dolazi s jednostavnim opcijama korištenja kao što je objašnjeno u nastavku.
Sintaksa za korištenje sdiff je sljedeća.
sdiff option... file1 file2
Pokažite razliku između dvije datoteke u Linuxu
1. Najlakši način da pokrenete sdiff je da navedete dva naziva datoteka koje pokušavate usporediti. Prikazat će spojenu razliku jednu do druge kao što je prikazano na sljedećoj snimci zaslona.
cal >cal.txt
df -h >du.txt
sdiff du.txt cal.txt
Tretirajte sve datoteke kao tekstualne datoteke
2. Za tretiranje svih datoteka kao tekstualnih i usporedbu redak po redak, bez obzira jesu li tekstualne datoteke ili ne, koristite oznaku -a
.
sdiff -a du.txt cal.txt
Filesystem Size Used Avail Use% Mounted on | April 2018
udev 3.9G 0 3.9G 0% /dev | Su Mo Tu We Th Fr Sa
tmpfs 788M 9.7M 779M 2% /run | 1 2 3 4 5 6 7
/dev/sda10 324G 265G 43G 87% / | 8 9 10 11 12 13 14
tmpfs 3.9G 274M 3.6G 7% /dev/shm | 15 16 17 18 19 20 21
tmpfs 5.0M 4.0K 5.0M 1% /run/lock | 22 23 24 25 26 27 28
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup | 29 30
/dev/loop2 82M 82M 0 100% /snap/core/4206 |
/dev/loop4 181M 181M 0 100% /snap/vlc/190 <
/dev/loop1 87M 87M 0 100% /snap/core/4407 <
/dev/loop0 189M 189M 0 100% /snap/vlc/158 <
/dev/loop3 83M 83M 0 100% /snap/core/4327 <
cgmfs 100K 0 100K 0% /run/cgmanager/fs <
tmpfs 788M 40K 788M 1% /run/user/1000 <
Ignorirajte kartice i razmak
3. Ako imate datoteke s previše razmaka, možete reći sdiff da zanemari sav bijeli prostor tijekom usporedbe pomoću prekidača -W
.
sdiff -W du.txt cal.txt
4. Također možete reći sdiff da zanemari svaki razmak na kraju retka pomoću opcije -z
.
sdiff -z du.txt cal.txt
5. Osim toga, možete uputiti sdiff da zanemari promjene zbog proširenja kartice s oznakom -E
.
sdiff -E du.txt cal.txt
Zanemari velika i mala slova dok uspoređuješ razlike
6. Za zanemarivanje velikih i malih slova (gdje sdiff tretira velika i mala slova kao isto), upotrijebite opciju -i
kao što je prikazano.
sdiff -i du.txt cal.txt
Zanemari prazne retke dok uspoređuješ razlike
7. Opcija -B
pomaže zanemariti prazne retke u datotekama.
sdiff -B du.txt cal.txt
Definirajte broj stupaca za izlaz
8. sdiff vam omogućuje da postavite broj stupaca za ispis (zadano je 130), korištenjem -w
prebacite na sljedeći način.
sdiff -w 150 du.txt cal.txt
Proširite kartice u razmake
9. Da biste proširili kartice na razmake u izlazu, koristite opciju -t
.
sdiff -t du.txt cal.txt
Pokrenite sdiff interaktivno
10. Oznaka -o
omogućuje interaktivnije pokretanje i slanje izlaza u datoteku. U ovoj naredbi, izlaz će biti poslan u datoteku sdiff.txt, pritisnite Enter nakon što vidite %
znak, da dobijete interaktivni izbornik .
sdiff du.txt cal.txt -o sdiff.txt
Filesystem Size Used Avail Use% Mounted on | April 2018
udev 3.9G 0 3.9G 0% /dev | Su Mo Tu We Th Fr Sa
tmpfs 788M 9.7M 779M 2% /run | 1 2 3 4 5 6 7
/dev/sda10 324G 265G 43G 87% / | 8 9 10 11 12 13 14
tmpfs 3.9G 274M 3.6G 7% /dev/shm | 15 16 17 18 19 20 21
tmpfs 5.0M 4.0K 5.0M 1% /run/lock | 22 23 24 25 26 27 28
tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup | 29 30
/dev/loop2 82M 82M 0 100% /snap/core/4206 |
/dev/loop4 181M 181M 0 100% /snap/vlc/190 <
/dev/loop1 87M 87M 0 100% /snap/core/4407 <
/dev/loop0 189M 189M 0 100% /snap/vlc/158 <
/dev/loop3 83M 83M 0 100% /snap/core/4327 <
cgmfs 100K 0 100K 0% /run/cgmanager/fs <
tmpfs 788M 40K 788M 1% /run/user/1000 <
%
ed: Edit then use both versions, each decorated with a header.
eb: Edit then use both versions.
el or e1: Edit then use the left version.
er or e2: Edit then use the right version.
e: Discard both versions then edit a new one.
l or 1: Use the left version.
r or 2: Use the right version.
s: Silently include common lines.
v: Verbosely include common lines.
q: Quit.
%
Imajte na umu da trebate imati neke od uređivača kao što je ed instaliran na vašem sustavu prije nego što ih koristite, u ovom scenariju.
Pozovite drugi program za usporedbu datoteka
11. Prekidač --diff-program
omogućuje vam pozivanje drugog alata naredbenog retka, osim samog sdiff, za usporedbu datoteka, na primjer , možete pozvati program diff kao što je prikazano.
sdiff --diff-program=diff du.txt cal.txt
Za više informacija, pogledajte sdiff man stranicu.
man sdiff
U ovom smo članku pogledali primjere alata naredbenog retka sdiff za početnike. Ako imate pitanja, upotrijebite obrazac za komentare u nastavku da biste nas kontaktirali.