Инструмент для сравнения содержимого строк - PullRequest
0 голосов
/ 21 апреля 2009

Я работаю над инструментом для генерации файлов TSV для импорта в базу данных с помощью bcp.exe, и я хотел бы проверить мой вывод. Я могу сделать это, сравнивая файл, который я генерирую, с файлами, созданными путем экспорта с использованием bcp из существующей базы данных. Моя проблема в том, что иногда порядок файлов может быть разным. Мне нужен инструмент, который сообщит мне, есть ли строки, которые не имеют точного соответствия в паре файлов, независимо от порядка строк.

1 Ответ

2 голосов
/ 21 апреля 2009

«Неважно» от того, является ли «безразличным» слово ...

Надежный способ сделать это сравнение - отсортировать два файла в одном порядке, а затем выполнить сравнение файлов. Поскольку вы упоминаете «bcp.exe», это больше похоже на Windows и, вероятно, MS SQL Server, чем на Unix и Sybase.

Я бы, вероятно, использовал Cygwin и либо diff, либо comm для сравнения (и sort для упорядочения) файлов, либо любой эквивалентный рабочий набор инструментов Unix (MKS, ...). Другие люди могут порекомендовать другие инструменты. Частично это зависит от того, сколько различий вы, как вы думаете, вы обычно найдете, и от того, как вы справитесь с ними после того, как найдете их. Нужен ли графический интерфейс? Кроме того, вы столкнулись с проблемой отслеживания различий между номерами строк в несортированных файлах данных.

...