J'ai un fichier qui n'a qu'une ligne. Sa taille est d'environ 20 000 octets.
Le fichier a été modifié et je voulais savoir où.
Je pensais utiliser diff, mais cela me montre la ligne complète, car elle affiche la ligne qui a la différence - mais dans ce cas, c'est la seule ligne du fichier qui présente des différences.
Je voulais donc voir quelle est la différence.
Aucun conseil?
Réponses:
En supposant qu'il y ait beaucoup d'espaces, comme dans le texte normal, vous pouvez diviser le fichier en mots et le comparer à un outil de diff normal, par exemple, fondre:
la source
Je trouverais un diff qui fait des diffs intra-ligne. j'utilise xxdiff sous UNIX. je pense WinMerge ne diff intra-ligne sur Windows.
Les autres réponses sont également bonnes: wdiff ou fragmentation - les limites de segment sont plus faciles à définir si les données sont délimitées, par exemple par un tuyau ou une virgule.
la source
S'il s'agit d'un problème ponctuel, je créerais des copies des fichiers avec
\n
caractères insérés tous les 50 caractères, puis diff ces copies. (J'ai choisi 50 parce que cela facilite le calcul, en modifiant le numéro de ligne en offset d'octet dans les fichiers d'origine, mais que je peux ajuster ce réglage en fonction de ce que j'ai trouvé.)la source