Linux Diff parancs

Linux Diff Parancs



A különbség valószínűleg egy fogalom vagy érzés, amely képes megkülönböztetni az egyik dolgot a másiktól. A „diff” parancs variációra utal. A dokumentumok soronkénti elemzésével ez az eszköz bemutatja a fájlok közötti különbségeket. Tájékoztat bennünket, hogy egy dokumentum mely szakaszait kell módosítani ahhoz, hogy a dokumentumok hasonlóak legyenek, ellentétben a kísérőelemekkel, a cmp és a comm. A legfontosabb szempont, amit szem előtt kell tartani, hogy a dokumentumok hasonlósága érdekében a diff speciális szimbólumokat és parancsokat használ. Útmutatást kap az első dokumentum módosításához, hogy az összhangban legyen a másik dokumentummal. Ebben az útmutatóban megvitatjuk a „diff” parancs használatát az Ubuntu 20.04-ben a Linux terminál használatával.

Két szöveges fájlt hoztunk létre rendszerünk munkamappájában.









Ideje használni a „diff” utasítást a lekérdezési területen, hogy megjelenítse a két fájltartalom közötti különbséget. Megpróbáljuk ezt a „diff” utasítást mindkét fájlnévvel egymás után, azaz először one.txt, majd two.txt fájllal. A „diff” parancs végrehajtása megmutatja nekünk a két fájl közötti különbséget:



  • Sorszámok az első szövegfájl szerint.
  • Speciális karakterek/szimbólumok, amelyek tudatják velünk a különbséget, például módosítás, hozzáadása, törlés.
  • Sorszámok a második szövegfájl szerint.

Első illusztrációnkban a „diff” parancskimenet sorszámai között részletezzük az „a” szimbólumot; Az „a” az „Add” rövidítéseként használatos. A „cat” utasítás mindkét fájlnévvel való használata a lekérdezési területen külön-külön megjeleníti az egyes szövegfájlokon belüli tartalmat, azaz az one.txt és a two.txt fájlokat. Az első fájlban összesen 4 sor van, míg a második fájl 5 sort tartalmaz. Az 1. sor extra.





Ezután megpróbáljuk a „diff” utasítást a terminál lekérdezési területén, majd a fájlok nevét – one.txt és two.txt. Ennek az utasításnak a végrehajtása a „0a1” kimenetet mutatja a második fájl 1. sorával együtt, amely egy extra sor a második fájlban. A „0” számértéket az első fájl 0. sora vagy az 1. sor előtt használják, azaz egy.txt. Az „a” szimbólum „hozzáadást” jelent. Végül az „1” számérték a második fájl első sorát jelenti. A „0d1” mix kimenet azt jelenti, hogy a második „two.txt” fájl 1. sorát hozzá kell adni az első „one.txt” fájl tetejéhez, mielőtt az első sor két azonos értékűvé tenné mindkét fájlt.



Most mindkét fájlt frissítjük, hogy egy másik illusztrációt lássunk. Az első „one.txt” fájl 4 sort tartalmaz, a második „two.txt” pedig csak 3 sort. Az egyetlen különbség ezeknél a fájloknál az, hogy egy extra sort használnak az első fájlban, azaz az 1. sor = „Hétfő”, ami nincs a második fájlban. A frissített szövegfájlok „diff” utasításának kipróbálása után „1d0”-t kapunk kimenetként. És megjelenik az első fájl első sora. Az „1d0”-ban az 1 azt jelenti, hogy a „one.txt” fájl első sorát törölni kell (a „d” szimbólum szerint), a 0 pedig azt, hogy a második fájl nem kapott frissítést. A végén az első „one.txt” fájl 1. sora jelenik meg az egyértelmű különbség érdekében.

Hasonlóképpen, a „diff” parancs különbséget jeleníthet meg két fájl sorai között. Ezért mindkét szövegfájlt ismét frissítjük. Ezúttal az első fájl 5 sort tartalmaz, míg a második fájl csak 4 sort tartalmaz. Az egyetlen különbség az, hogy a one.txt fájlban egy extra sort használunk, amely a 3. sor. A terminál mindkét fájljában használt diff parancs egy adja ki a „3d2”-t az első „one.txt” fájl 3. sorával együtt. Ez a kimenet azt mutatja, hogy az első „one.txt” fájl 3. sorát törölni kell, hogy mindkét fájlt szinkronizálhassuk a második fájl 2. sorában. A különböző „3” sor jelenik meg, hogy világos képet kapjunk a különbségről.

Tekintsük világosan és mélyebben a kimenetet. A következő kép 1,5c1,2 kimenete azt mutatja, hogy az első fájl (one.txt) 1-től 5-ig terjedő sorait meg kell változtatni egy második fájl (two.txt) 1-2 soraival. Ez azt jelenti, hogy a one.txt fájl első 5 sorát (1-től 5-ig) meg kell változtatni, és le kell cserélni a második „two.txt” fájl első két sorára (1, 2), hogy ugyanaz legyen. A végén megjelenik az első fájl mind az 5 sora, amelyet le kell cserélni a második fájl megjelenített 2 sorára. A „c” szimbólum így tesz különbséget két fájl között – egyetlen sor sem azonos a két fájlban.

A „diff” parancs lehetővé teszi, hogy a kimenetét környezeti formában kapja meg. Képzelje el, hogy ugyanaz a két fájl van a következő adatokkal ezekben a fájlokban. A kimenet körüli kontextus az lenne, hogy megjelenítse a fő különbséget a következő képen látható összes egyszerű fájl között. Most 5 sor van az első „one.txt” fájlban és 4 sor a második „two.txt” fájlban.

A „diff” utasítás környezetalapú kimenetének eléréséhez használnunk kell a „-c” opciót a „diff” parancson belül. A korábban frissített fájlok felhasználásával ebben a „diff” parancsban a következő kimenetet kapjuk – dátum, nap, valamint a fájlokon belüli szövegalkotásra vonatkozó extra információk. Megjelenik a one.txt fájl 5 sora. Leginkább a harmadik sora van kiemelve a „-“ karakterrel, hogy csak hozzáadjuk egy másik fájlhoz.

Következtetés

Megpróbáltunk mindent röviden elmagyarázni a „diff” utasítással kapcsolatban. Ennek érdekében minden alkalommal frissítettük szöveges fájljainkat, és frissített kimenetet kaptunk a fájlban lévő adatok hozzáadásához, eltávolításához és módosításához. A bevezető elmagyarázta a „diff” parancs használatának célját Linuxban, és azt, hogyan kell használni Linux alatt.