Abbiamo creato due file di testo nella cartella di lavoro del nostro sistema.
È ora di utilizzare l'istruzione 'diff' in un'area di query per visualizzare la differenza tra i contenuti di entrambi i file. Proviamo questa istruzione 'diff' con entrambi i nomi di file in sequenza, ovvero prima un.txt e poi due.txt. L'esecuzione del comando 'diff' ci mostra la differenza tra i due file come:
- Numeri di riga in base al primo file di testo.
- Caratteri/simboli speciali per farci sapere la differenza come modificare, aggiungere, eliminare.
- Numeri di riga in base al secondo file di testo.
Nella nostra prima illustrazione, elaboriamo il simbolo 'a' tra i numeri di riga dell'output del comando 'diff'; “a” è l'abbreviazione di “Aggiungi”. L'uso dell'istruzione 'cat' con entrambi i nomi di file nell'area di query visualizza separatamente il contenuto all'interno di ciascun file di testo, ovvero one.txt e two.txt. Abbiamo un totale di 4 righe all'interno del primo file mentre il secondo file contiene 5 righe. La linea 1 è extra.
Quindi, proviamo l'istruzione 'diff' nell'area di query del terminale seguita dai nomi dei file: one.txt e two.txt. L'esecuzione di questa istruzione mostra '0a1' come output insieme alla riga 1 del secondo file che è una riga aggiuntiva nel secondo file. Il valore numerico “0” viene utilizzato per la riga 0 o prima della riga 1 del primo file, ovvero one.txt. Il simbolo 'a' significa 'aggiungere'. Infine, il valore numerico “1” indica la prima riga del secondo file. L'output del mix '0d1' significa che la riga 1 del secondo file 'two.txt' deve essere aggiunta all'inizio del primo file 'one.txt' prima che la prima riga due renda entrambi i file uguali.
Ora aggiorniamo entrambi i file per vedere un'altra illustrazione. Il primo file 'one.txt' contiene 4 righe e il secondo file 'two.txt' contiene solo 3 righe. L'unica differenza per questi file è l'uso di una riga in più nel primo file, ovvero la riga 1 = 'lunedì' che non è nel secondo file. Dopo aver provato l'istruzione 'diff' per i file di testo aggiornati, otteniamo '1d0' come output. E viene visualizzata la prima riga del primo file. In “1d0”, 1 significa che la prima riga del file “one.txt” deve essere cancellata (come da simbolo “d”), e 0 significa che il secondo file non ha ricevuto alcun aggiornamento. Alla fine, viene visualizzata la riga 1 del primo file 'one.txt' per la chiara differenza.
Allo stesso modo, il comando 'diff' può visualizzare una differenza tra le righe di due file. Pertanto, aggiorniamo nuovamente entrambi i file di testo. Questa volta, il primo file contiene 5 righe mentre il secondo file ne contiene solo 4. L'unica differenza è l'uso di una riga extra in one.txt che è la riga 3. Il comando diff utilizzato su entrambi i file nel terminale mostra un output '3d2' insieme alla riga 3 dal primo file 'one.txt'. Questo output mostra che la riga 3 del primo file 'one.txt' deve essere eliminata in modo da poter sincronizzare entrambi i file alla riga 2 del secondo file. Viene visualizzata la diversa riga '3' in modo da poter avere un'idea chiara della differenza.
Diamo uno sguardo chiaro e più approfondito all'output. L'output 1,5c1,2 dell'immagine seguente mostra che le righe da 1 a 5 di un primo file (one.txt) devono essere modificate con le righe da 1 a 2 di un secondo file (two.txt). Significa che le prime 5 righe (da 1 a 5) del file one.txt devono essere modificate e sostituite con le prime due righe (1, 2) del secondo file “two.txt” per renderlo uguale. Alla fine, vengono visualizzate tutte le 5 righe del primo file che dovrebbero essere sostituite con le 2 righe visualizzate del secondo file. Questo è il modo in cui il simbolo 'c' indica una differenza tra due file: nessuna linea è la stessa in entrambi i file.
Il comando 'diff' ti consente di ottenere il suo output in un modulo di contesto. Immagina di avere gli stessi due file con i seguenti dati in questi file. Il contesto attorno all'output sarebbe quello di visualizzare la differenza principale tra i file semplici totali mostrati nell'immagine seguente. Ora abbiamo 5 righe nel primo file 'one.txt' e 4 righe nel secondo file 'two.txt'.
Per ottenere l'output basato sul contesto dell'istruzione 'diff', è necessario utilizzare l'opzione '-c' all'interno del comando 'diff'. Usando i file precedentemente aggiornati in questo comando 'diff', otteniamo il seguente output: data, giorno, insieme alle informazioni extra relative alla creazione del testo all'interno dei file. Vengono visualizzate le 5 righe dei file one.txt. In particolare, la sua terza riga viene evidenziata utilizzando il carattere '-' per aggiungerla semplicemente a un altro file.
Conclusione
Abbiamo cercato di spiegare brevemente tutto sull'istruzione 'diff'. Per questo, abbiamo aggiornato i nostri file di testo ogni volta e abbiamo ottenuto un output aggiornato per aggiungere, rimuovere e modificare i dati in un file. L'introduzione spiegava lo scopo dell'utilizzo del comando 'diff' in Linux e come utilizzarlo per Linux.