Comandi Linux · 3 min read · Sep 20, 2025

Tutorial sul comando sdiff di Linux per principianti (8 esempi)

Qui su HowtoForge, abbiamo già discusso di molteplici utilità della riga di comando focalizzate sulla ricerca delle differenze tra file. Ma ci sono molti altri strumenti simili, e in questo tutorial discuteremo di un comando chiamato sdiff utilizzando alcuni esempi facili da comprendere.

Si prega di notare che tutti gli esempi del comando sdiff menzionati in questo articolo sono stati testati su Ubuntu 22.04 LTS.

Comando sdiff di Linux

Il comando sdiff ti mostra le differenze tra file in forma affiancata. Di seguito è riportata la sua sintassi:

sdiff [OPZIONE]... FILE1 FILE2

Ecco come la pagina man lo descrive:

sdiff - unione affiancata delle differenze tra file  
Unione affiancata delle differenze tra FILE1 e FILE2.

Di seguito ci sono alcuni esempi in stile Q&A che dovrebbero darti una buona idea di come funziona questo strumento.

Q1. Come funziona il comando sdiff?

L’uso di base è semplice, tutto ciò che devi fare è eseguire il comando sdiff con i nomi dei file come argomenti. Ad esempio:

sdiff file1 file2

file1 e file2 erano esattamente gli stessi nel mio caso.

Ecco l’output prodotto da sdiff in questo caso:

Questo tipo di output significa che non ci sono differenze nei file.

Q2. Come far ignorare a sdiff le maiuscole?

Supponiamo che file1 e file2 contengano le seguenti righe:

Il comando:

sdiff file1 file2

produce il seguente output:

Il pipe (|) nella prima riga nella seconda colonna indica che i due file sono diversi nella prima riga stessa. Tuttavia, se vuoi, puoi forzare sdiff a ignorare le maiuscole, cosa che puoi fare utilizzando l’opzione della riga di comando -i.

sdiff -i file1 file2

Quindi puoi vedere che l’output ora mostra i due file come identici, il che significa che la differenza di maiuscole è stata ignorata.

Q3. Come far ignorare a sdiff gli spazi?

Nel caso in cui uno dei file contenga spazi, il comando sdiff mostrerà la differenza per impostazione predefinita. Tuttavia, se vuoi, puoi sopprimere questo comportamento utilizzando l’opzione della riga di comando -Z:

Come far ignorare a sdiff gli spazi

Poi ci sono diverse altre opzioni relative agli spazi di cui dovresti essere a conoscenza. Ecco un elenco:

-E, --ignore-tab-expansion  
              ignora le modifiche dovute all'espansione delle tabulazioni
-b, --ignore-space-change  
              ignora le modifiche nella quantità di spazi bianchi
-W, --ignore-all-space  
              ignora tutti gli spazi bianchi

Q4. Come far ignorare a sdiff le righe vuote?

Proprio come gli spazi, per impostazione predefinita, il comando sdiff tiene conto anche delle righe vuote. Ad esempio:

Come far ignorare a sdiff le righe vuote

Tuttavia, puoi far ignorare al comando le righe vuote utilizzando l’opzione della riga di comando -B.

sdiff -B file1 file2

output line

Quindi puoi vedere che il comando sdiff non ha considerato la riga vuota come una differenza in questo caso.

Q5. Come far sopprimere a sdiff le righe comuni?

Supponiamo che i file contengano alcune righe comuni, e vuoi che il comando sdiff sopprima le righe comuni, allora puoi farlo utilizzando l’opzione della riga di comando -s.

sdiff -s file1 file2

Q6. Come far utilizzare a sdiff un programma diff diverso?

Per impostazione predefinita, sdiff utilizza diff per eseguire il confronto. Tuttavia, se vuoi, puoi anche sostituire diff con il programma di tua scelta. Per farlo, utilizza l’opzione –diff-program che richiede il nome del programma come input.

sdiff --diff-program=[PROGRAMMA] file1 file2

Q7. Come salvare l’output di sdiff in un file

L’opzione -o o –output ci consente di salvare il risultato di sdiff in un file di output. Esempio:

sdiff --output=/tmp/mydiff.txt file1 file2

Q8. Come ottenere solo la colonna sinistra

Con l’opzione della riga di comando -l o la sua forma lunga –left-column, ottieni solo la colonna sinistra come risultato.

sdiff --left-column file1 file2

Conclusione

Lo strumento Sdiff offre molte funzionalità, ma la sua curva di apprendimento non è così ripida. Tutto ciò di cui hai bisogno è un po’ di pratica e dovresti essere a posto. Abbiamo discusso della maggior parte delle opzioni della riga di comando qui. Per ulteriori informazioni, vai alla pagina man di sdiff.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.