Для решения Perl, пожалуйста, используйте модуль Text::CSV
для анализа плоских (X-разделенных) файлов - конструктор принимает параметр, указывающий символ разделителя.Сделайте это для каждого файла в цикле со списком файлов, сгенерированным либо glob()
для файлов в данном каталоге, либо File::Find
для подкаталогов
Затем, чтобы получить уникальные значения для каждой строки,сохранить столбец № 25 в хэше.
Например, после получения значений:
$colref = $csv->getline($io);
$unique_values_hash{ $colref->[24] } = 1;
Затем выполнить итерацию по ключам хеш-функции и распечатать в файл.* Для решения без оболочки Perl вы можете просто сделать:
cat MyFile_pattern | awk -F'\t' 'print $25' |sort -u > MyUniqueValuesFile
Вы можете заменить awk
на cut
Обратите внимание, что решение не на Perl работает, только если файлыне содержат табуляции в самих полях, а столбцы не заключаются в кавычки.