Commande Linux Diff

Commande Linux Diff



La différence est plus susceptible d'être un concept ou un sentiment qui peut distinguer une chose d'une autre. La commande 'diff' fait référence à la variation. En analysant les documents ligne par ligne, cet outil met en évidence les distinctions entre les dossiers. Il nous informe des sections d'un document qui doivent être modifiées pour créer des documents similaires, contrairement à ses éléments compagnons cmp et comm. L'aspect crucial à garder à l'esprit est que pour que les documents soient similaires, diff utilise des symboles et des commandes spéciaux spécifiques. Vous recevez des instructions sur la façon de modifier le premier document afin qu'il soit cohérent avec l'autre document. Dans ce guide, nous discuterons de l'utilisation de la commande 'diff' dans Ubuntu 20.04 en utilisant le terminal Linux.

Nous avons créé deux fichiers texte dans le dossier de travail de notre système.









Il est temps d'utiliser l'instruction 'diff' dans une zone de requête pour afficher la différence entre le contenu des deux fichiers. Nous essayons cette instruction 'diff' avec les deux noms de fichiers dans une séquence, c'est-à-dire un fichier.txt d'abord, puis deux fichiers.txt. L'exécution de la commande 'diff' nous montre la différence entre les deux fichiers comme suit :



  • Numéros de ligne selon le premier fichier texte.
  • Caractères/symboles spéciaux pour nous informer de la différence, comme modifier, ajouter, supprimer.
  • Numéros de ligne selon le second fichier texte.

Dans notre première illustration, nous développons le symbole 'a' parmi les numéros de ligne de la sortie de la commande 'diff' ; 'a' est utilisé comme abréviation de 'Ajouter'. L'utilisation de l'instruction 'cat' avec les deux noms de fichiers dans la zone de requête affiche séparément le contenu de chaque fichier texte, c'est-à-dire un.txt et deux.txt. Nous avons un total de 4 lignes dans le premier fichier tandis que le second fichier contient 5 lignes. La ligne 1 est en supplément.





Ensuite, nous essayons l'instruction 'diff' dans la zone de requête du terminal suivie des noms de fichiers - one.txt et two.txt. L'exécution de cette instruction affiche '0a1' en sortie avec la ligne 1 du deuxième fichier qui est une ligne supplémentaire dans le deuxième fichier. La valeur numérique '0' est utilisée pour la ligne 0 ou avant la ligne 1 du premier fichier, c'est-à-dire un.txt. Le symbole 'a' signifie 'ajouter'. Enfin, la valeur numérique « 1 » signifie la première ligne du deuxième fichier. La sortie mix '0d1' signifie que la ligne 1 du deuxième fichier 'two.txt' doit être ajoutée en haut du premier fichier 'one.txt' avant que la première ligne deux ne rende les deux fichiers identiques.



Maintenant, nous mettons à jour les deux fichiers pour voir une autre illustration. Le premier fichier 'one.txt' contient 4 lignes et le deuxième fichier 'two.txt' ne contient que 3 lignes. La seule différence pour ces fichiers est l'utilisation d'une ligne supplémentaire dans le premier fichier, c'est-à-dire la ligne 1 = 'lundi' qui n'est pas dans le deuxième fichier. Après avoir essayé l'instruction 'diff' pour les fichiers texte mis à jour, nous obtenons '1d0' en sortie. Et la première ligne du premier fichier s'affiche. Dans '1d0', 1 signifie que la première ligne du fichier 'one.txt' doit être supprimée (selon le symbole 'd'), et 0 signifie que le deuxième fichier n'a pas été mis à jour. Au final, la ligne 1 du premier fichier 'one.txt' s'affiche pour la nette différence.

De même, la commande « diff » peut afficher une différence entre les lignes de deux fichiers. Par conséquent, nous mettons à jour les deux fichiers texte une fois de plus. Cette fois, le premier fichier contient 5 lignes alors que le deuxième fichier n'en contient que 4. La seule différence est l'utilisation d'une ligne supplémentaire dans one.txt qui est la ligne 3. La commande diff utilisée sur les deux fichiers dans le terminal affiche un sortie '3d2' avec la ligne 3 du premier fichier 'one.txt'. Cette sortie montre que la ligne 3 du premier fichier 'one.txt' doit être supprimée afin que nous puissions synchroniser les deux fichiers à la ligne 2 du deuxième fichier. La ligne différente '3' est affichée afin que nous puissions avoir une idée claire de la différence.

Jetons un regard clair et approfondi sur la sortie. La sortie 1,5c1,2 de l'image suivante montre que les lignes 1 à 5 d'un premier fichier (one.txt) doivent être remplacées par les lignes 1 à 2 d'un second fichier (two.txt). Cela signifie que les 5 premières lignes (1 à 5) du fichier one.txt doivent être modifiées et remplacées par les deux premières lignes (1, 2) du deuxième fichier 'two.txt' pour le rendre identique. Au final, les 5 lignes du premier fichier sont affichées et doivent être remplacées par les 2 lignes affichées du deuxième fichier. C'est ainsi que le symbole 'c' indique une différence entre deux fichiers - aucune ligne n'est la même dans les deux fichiers.

La commande 'diff' vous permet d'obtenir sa sortie sous une forme contextuelle. Imaginez que vous avez les deux mêmes fichiers avec les données suivantes dans ces fichiers. Le contexte autour de la sortie serait d'afficher la principale différence entre le nombre total de fichiers simples affichés dans l'image suivante. Maintenant, nous avons 5 lignes dans le premier fichier 'one.txt' et 4 lignes dans le deuxième fichier 'two.txt'.

Pour obtenir la sortie contextuelle de l'instruction 'diff', nous devons utiliser l'option '-c' dans la commande 'diff'. En utilisant les fichiers précédemment mis à jour dans cette commande 'diff', nous obtenons la sortie suivante - date, jour, ainsi que les informations supplémentaires concernant la création de texte dans les fichiers. Les 5 lignes des fichiers one.txt s'affichent. Plus particulièrement, sa troisième ligne est mise en surbrillance à l'aide du caractère '-' pour simplement l'ajouter à un autre fichier.

Conclusion

Nous avons essayé d'expliquer brièvement tout ce qui concerne l'instruction 'diff'. Pour cela, nous avons mis à jour nos fichiers texte à chaque fois et avons obtenu une sortie mise à jour pour ajouter, supprimer et modifier les données dans un fichier. L'introduction a expliqué le but de l'utilisation de la commande 'diff' sous Linux et comment l'utiliser pour Linux.