Linux sdiff -komentoesimerkkejä Linux-aloittelijoille


Yhdessä aiemmassa artikkelissamme olemme selittäneet noin 9 parasta tiedostojen vertailu- ja erotustyökalua (Diff) Linux-järjestelmille. Luettelimme yhdistelmän komentorivi- ja GUI-työkaluja tiedostojen välisten erojen vertailuun ja löytämiseen, joista jokaisella on tiettyjä merkittäviä ominaisuuksia. Toinen hyödyllinen diff-apuohjelma Linuxille on nimeltään sdiff.

Lue myös: Kuinka löytää ero kahden hakemiston välillä Diff- ja Meld-työkalujen avulla

sdiff on yksinkertainen komentorivityökalu, joka näyttää kahden tiedoston väliset erot ja yhdistää interaktiivisesti. Se on helppokäyttöinen ja siinä on selkeitä käyttövaihtoehtoja, kuten alla on selitetty.

sdiff:n syntaksi on seuraava.

sdiff option... file1 file2

Näytä ero kahden tiedoston välillä Linuxissa

1. Helpoin tapa suorittaa sdiff on antaa kaksi tiedostonimeä, joita yrität vertailla. Se näyttää yhdistetyn eron vierekkäin, kuten seuraavassa kuvakaappauksessa näkyy.


cal >cal.txt
df -h >du.txt
sdiff du.txt cal.txt

Käsittele kaikkia tiedostoja tekstitiedostoina

2. Jos haluat käsitellä kaikkia tiedostoja tekstinä ja verrata niitä rivi riviltä riippumatta siitä, ovatko ne tekstitiedostoja vai eivät, käytä -a-lippua.

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	      <

Ohita välilehdet ja välilyönnit

3. Jos sinulla on tiedostoja, joissa on liikaa välilyöntejä, voit käskeä sdiff jättää huomioimatta kaiken välilyönnin vertailussa käyttämällä -W-kytkintä.

sdiff -W du.txt cal.txt

4. Voit myös käskeä sdiff jättää huomiotta välilyönnit rivin lopussa käyttämällä -z-vaihtoehtoa.

sdiff -z du.txt cal.txt

5. Lisäksi voit ohjeistaa sdiff ohittamaan välilehden laajennuksesta johtuvat muutokset -E-lipulla.

sdiff -E du.txt cal.txt

Jätä kirjainkoko huomioimatta, kun vertaat eroja

6. Jos haluat jättää huomioimatta kirjaimet (jossa sdiff käsittelee isoja ja pieniä kirjaimia samana), käytä -i-vaihtoehtoa kuvan mukaisesti.

sdiff -i du.txt cal.txt

Ohita tyhjät rivit, kun vertaat eroja

7. -B-vaihtoehto auttaa ohittamaan tiedostoissa olevat tyhjät rivit.

sdiff -B du.txt cal.txt

Määritä tulostettavien sarakkeiden määrä

8. sdiff antaa sinun määrittää tulostettavien sarakkeiden määrän (oletus on 130) käyttämällä -w-kytkin seuraavasti.

sdiff -w 150 du.txt cal.txt

Laajenna välilehdet välilyönneiksi

9. Jos haluat laajentaa sarkaimet tulosteen välilyönneiksi, käytä -t-vaihtoehtoa.

sdiff -t du.txt cal.txt

Suorita sdiff interaktiivisesti

10. Lippu -o mahdollistaa sen toimimisen interaktiivisemmin ja tulosteen lähettämisen tiedostoon. Tässä komennossa tulos lähetetään sdiff.txt-tiedostoon. Paina Enter-näppäintä, kun olet nähnyt %-merkin, jolloin saat interaktiivisen valikon. .

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.
%

Huomaa, että tässä skenaariossa sinun on oltava asennettuna järjestelmään jotkin editorit, kuten ed, ennen kuin käytät niitä.

Kutsu toinen ohjelma vertaillaksesi tiedostoja

11. --diff-program-kytkimen avulla voit kutsua toista komentorivityökalua, ei itse sdiff-työkalua esimerkiksi tiedostojen vertailua varten. , voit kutsua diff-ohjelmaa kuvan osoittamalla tavalla.

sdiff --diff-program=diff du.txt cal.txt

Lisätietoja saat sdiff-manuaalisivulta.

man sdiff

Tässä artikkelissa tarkastelimme sdiff-komentorivityökalun esimerkkejä aloittelijoille. Jos sinulla on kysyttävää, käytä alla olevaa kommenttilomaketta ottaaksesi meihin yhteyttä.