GNU/Linux >> Linux Esercitazione >  >> Linux

Esempi di comandi diff in Linux

Il comando diff viene utilizzato per confrontare i file di testo. Il comando visualizza i due file e le differenze tra di loro. Utilizzando vari simboli, l'output suggerisce come modificare un file per renderlo identico all'altro. Ogni simbolo ha un significato speciale.

Il simbolo minore di (<) con una riga dopo significa che la riga deve essere rimossa dal primo file perché non compare nel secondo. Il simbolo maggiore di (>) con una riga dopo significa che la riga deve essere aggiunta dal secondo file. Inoltre, il comando diff indica anche i numeri di riga per ciascun file che sarebbe interessato dalle operazioni di eliminazione, aggiunta e modifica.

Sintassi

La sintassi del comando diff è:

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

diff OPZIONI DI COMANDO

Il comando diff ha varie opzioni che ti consentono di specificare la natura dell'output.

Opzione Descrizione
-b Ignora le differenze di spaziatura.
-i Ignora le differenze tra maiuscole e minuscole.
-t Espandi i caratteri di tabulazione nelle righe di output.
-w Ignora differenze di spaziatura e tabulazioni.
-c Visualizza un elenco di differenze con tre righe di contesto.
-u L'output risulta in modalità unificata, che presenta un formato più snello.

Esempi di comando diff

1. Confronta i file (elenca le modifiche per trasformare `vecchio_file` in `nuovo_file`):

# diff old_file new_file

2. Confronta i file, ignorando gli spazi bianchi:

# diff --ignore-all-space old_file new_file

3. Confronta i file, mostrando le differenze affiancate:

# diff --side-by-side old_file new_file

4. Confronta i file, mostrando le differenze nel formato unificato (come usato da `git diff`):

# diff --unified old_file new_file

5. Confronta le directory in modo ricorsivo (mostra i nomi di file/directory diversi e le modifiche apportate ai file):

# diff --recursive old_directory new_directory

6. Confronta le directory, mostrando solo i nomi dei file che differiscono:

# diff --recursive --brief old_directory new_directory

7. Crea un file di patch per Git dalle differenze di due file di testo, trattando i file inesistenti come vuoti:

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

8. diff può anche confrontare le directory:

# diff dir1 dir2

che confronta tutti i file con lo stesso nome in quelle directory ed elenca tutti i file che appaiono in una directory ma non nell'altra. Per confrontare intere gerarchie di directory in modo ricorsivo, utilizzare l'opzione -r:

# diff -r dir1 dir2

che produce un rapporto (potenzialmente massiccio) di tutte le differenze.

Conclusione

Il comando diff confronta due file riga per riga o due directory. Quando si confrontano i file di testo, diff può produrre rapporti dettagliati sulle loro differenze. Per i file binari, diff segnala semplicemente se differiscono o meno. Per tutti i file, se non ci sono differenze, diff non produce alcun output.


Linux
  1. Esempi pratici di comando rsync in Linux

  2. sa Esempi di comandi in Linux

  3. w Esempi di comandi in Linux

  4. ac Esempi di comandi in Linux

  5. Esempi di comandi df in Linux

Comando Rm in Linux

lsof Command in Linux (10 esempi)

Esempi di comandi di Linux diff

Esempi di comandi id in Linux

lsof Command in Linux con esempi

Comando di comunicazione Linux con esempi