GNU/Linux >> Znalost Linux >  >> Linux

Příklady příkazů diff v Linuxu

Příkaz diff se používá k porovnání textových souborů. Příkaz zobrazí dva soubory a rozdíly mezi nimi. Pomocí různých symbolů výstup navrhuje, jak můžete změnit jeden soubor, aby byl shodný s druhým. Každý symbol má zvláštní význam.

Symbol menší než (<) s řádkem za ním znamená, že řádek by měl být odstraněn z prvního souboru, protože se neobjevuje ve druhém. Symbol větší než (>) s řádkem za ním znamená, že řádek by měl být přidán z druhého souboru. Kromě toho příkaz diff také označuje čísla řádků pro každý soubor, který by byl ovlivněn operacemi mazání, přidávání a změn.

Syntaxe

Syntaxe příkazu diff je:

# diff {file name 1} {file name 2}

rozdíl MOŽNOSTI PŘÍKAZŮ

Příkaz diff má různé možnosti, které vám umožňují určit povahu výstupu.

Možnost Popis
-b Ignorujte rozdíly v rozestupech.
-i Rozdíly malých a velkých písmen ignorujte.
-t Rozbalte znaky tabulátoru ve výstupních řádcích.
-w Ignorujte rozdíly v mezerách a tabulátory.
-c Zobrazte seznam rozdílů se třemi řádky kontextu.
-u Výsledkem je jednotný režim, který představuje efektivnější formát.

Příklady příkazů diff

1. Porovnejte soubory (uvádí změny, aby se `starý_soubor` změnil na `nový_soubor`):

# diff old_file new_file

2. Porovnejte soubory, ignorujte mezery:

# diff --ignore-all-space old_file new_file

3. Porovnejte soubory a ukažte rozdíly vedle sebe:

# diff --side-by-side old_file new_file

4. Porovnejte soubory a ukažte rozdíly v jednotném formátu (jak používá `git diff`):

# diff --unified old_file new_file

5. Porovnejte adresáře rekurzivně (zobrazí názvy různých souborů/adresářů a také změny provedené v souborech):

# diff --recursive old_directory new_directory

6. Porovnejte adresáře, zobrazí se pouze názvy souborů, které se liší:

# diff --recursive --brief old_directory new_directory

7. Vytvořte opravný soubor pro Git z rozdílů dvou textových souborů, přičemž neexistující soubory považujte za prázdné:

# diff --text --unified --new-file old_file new_file > diff.patch

8. diff může také porovnávat adresáře:

# diff dir1 dir2

který porovnává všechny soubory stejného jména v těchto adresářích a uvádí všechny soubory, které se vyskytují v jednom adresáři, ale ne ve druhém. Chcete-li rekurzivně porovnat celé hierarchie adresářů, použijte volbu -r:

# diff -r dir1 dir2

což vytváří (potenciálně masivní) zprávu o všech rozdílech.

Závěr

Příkaz diff porovnává dva soubory řádek po řádku nebo dva adresáře. Při porovnávání textových souborů může diff vytvářet podrobné zprávy o jejich rozdílech. U binárních souborů diff pouze hlásí, zda se liší nebo ne. Pro všechny soubory, pokud nejsou žádné rozdíly, diff nevytváří žádný výstup.


Linux
  1. Praktické příklady příkazu rsync v Linuxu

  2. 7 Příklady příkazů Linux df

  3. 8 Příklady příkazů Linux TR

  1. 7 Příklady příkazů Patch pro použití souborů oprav rozdílů v systému Linux

  2. sa Příklady příkazů v Linuxu

  3. Příklady příkazů ac v Linuxu

  1. Příklady příkazů rm v Linuxu

  2. Příklady příkazů df v Linuxu

  3. du příklady příkazů v Linuxu