GNU/Linux >> Tutoriels Linux >  >> Linux

Comment comparer deux fichiers dans un terminal Linux

Le besoin de comparaison de fichiers sur un système d'exploitation Linux est souvent négligé, mais a un rôle important à jouer, en particulier pour les administrateurs système Linux. La possibilité de comparer de manière flexible deux fichiers sur un terminal Linux permet de mieux comprendre à quel point un ensemble de fichiers est perçu comme unique ou différent.

[ Vous pourriez également aimer :Comment joindre deux fichiers texte sous Linux ]

Par exemple, deux fichiers peuvent exister avec les mêmes propriétés et la même taille. Au lieu de supposer qu'ils sont identiques, un programme de comparaison de fichiers Linux éclaircira l'air sur un tel problème. Vous pourriez être surpris de découvrir que le facteur de différenciation des deux fichiers est un libellé ou un espacement qui correspond à un fichier et qui ne correspond pas à l'autre.

Plusieurs programmes Linux basés sur des terminaux peuvent nous aider à atteindre l'objectif de cet article, mais seuls quelques-uns se démarquent en termes de fonctionnalités dynamiques.

Création de fichiers texte sous Linux

Créons deux exemples de fichiers à partir du terminal Linux. Assurez-vous que vous êtes un utilisateur sudoer ou que vous disposez des privilèges sudo sur le système d'exploitation Linux que vous utilisez.

$ sudo nano file1

Nous remplirons ce fichier avec du contenu aléatoire.

1 2 3 4 5 6 7 8 9 10un deux trois quatre cinq six sept huit neuf dix 

Créons un deuxième fichier.

$ sudo nano file2

Nous remplirons ce fichier avec un contenu légèrement similaire à fichier1 .

11 2 13 4 15 6 7 8 19 10un deux fois trois quatre cinq six sept huit neuf dix 

Utiliser diff pour comparer des fichiers sous Linux

Depuis diff est un programme basé sur un terminal, l'utilisant génère les différences ciblées entre deux fichiers. En d'autres termes, la diff la sortie vous indique les modifications qui peuvent être implémentées sur file1 pour en faire une correspondance ou identique à fichier2 .

Afficher les différences entre deux fichiers

Mettons en œuvre la première tentative de comparaison de ces deux fichiers :

$ diff fichier1 fichier2

Nous pouvons interpréter cette sortie de la manière suivante :

Si vous revenez au fichier1 d'origine et fichier2 fichiers que nous avons créés précédemment, vous remarquerez que les diff ci-dessus la sortie de la commande n'affiche pas tout le contenu des deux fichiers. Il a omis toutes les similitudes des deux fichiers et n'a affiché que leurs différences.

Découvrez que deux fichiers sont identiques à l'aide de Diff sous Linux

Créons un troisième fichier appelé file3 .

$ sudo nano file3

Nous remplirons ce fichier avec un contenu similaire à file1.

1 2 3 4 5 6 7 8 9 10un deux trois quatre cinq six sept huit neuf dix 

Un diff d'une seule ligne la sortie de la commande devrait pouvoir nous dire directement si deux fichiers sont identiques.

$ diff -s fichier1 fichier3

L'utilisation des -s supplémentaires L'argument de commande rend cette sortie possible. Cependant, l'implémenter avec deux fichiers non identiques affichera toujours leurs différences.

$ diff -s fichier1 fichier2

Si vous recherchez une sortie d'une seule ligne sur deux fichiers que vous soupçonnez d'être différents, envisagez l'utilisation de la commande diff avec le -q option.

$ diff -q fichier1 fichier2Les fichiers fichier1 et fichier2 diffèrent 

Vue alternative de la sortie de la commande Diff

Si vous avez besoin que la comparaison de sortie de vos deux fichiers soit côte à côte, envisagez d'implémenter le diff commande avec le -y option.

$ diff -y fichier1 fichier2

Si vous souhaitez que la commande ci-dessus supprime ou ignore les similitudes des deux fichiers, incluez le --suppress-common-lines option.

 $ diff -y --suppress-common-lines fichier1 fichier2

Si vous avez affaire à deux fichiers volumineux et que vous souhaitez limiter la sortie à des numéros de colonne spécifiques, vous devez implémenter le diff commande de la manière suivante.

$ diff -y -W 50 fichier1 fichier2

La commande ci-dessus suppose que les deux fichiers en comparaison sont quelque peu volumineux et dépassent 50 colonnes en termes de taille de texte. La sortie diff sera limitée à 50 colonnes.


Linux
  1. Comment renommer des fichiers sous Linux

  2. Comment joindre deux fichiers texte sous Linux

  3. Comment compresser plusieurs fichiers sous Linux

  4. Comment comparer le contenu de deux archives tar

  5. Comment comparer deux bases de données SQLite sous Linux

Comment ouvrir une fenêtre de terminal Linux

Comment afficher deux fichiers côte à côte sous Linux

Comment ouvrir un PDF dans un terminal Linux

Comment copier des fichiers et des répertoires dans un terminal Linux

Utilisation de la commande Diff pour comparer deux fichiers dans un terminal Linux

Comparer deux fichiers dans un terminal Linux