Объединение нескольких текстовых файлов в один

Я искал всемирную паутину с высоким и низким уровнем и не могу найти решения для моей проблемы! У меня есть несколько текстовых файлов, которые я хотел бы объединить.

Проще показать примеры, чем объяснить, почему именно я пытаюсь это сделать.

Первый файл выглядит так:

John Paul Mark Sam Herold 

Этот файл служит в качестве «первичного ключа».

Остальные файлы содержат данные для каждого элемента, подобного этому. Программа генерирует эти данные в новый файл каждый час.

 4 10 20 5 200 

Я больше всего знаком с файлами окон, поэтому я попытался написать что-то вроде этого:

 for /f "tokens=*" %%A in (file1.txt) do (for /f "tokens=*" %%B in (file2.txt) do (echo %%A,%%B>>combined.txt)) 

К сожалению, каждый человек пишет каждое значение. Если это будет работать как ожидалось, конечный результат будет таким:

 John,4,2,6,9,1,2,5,6,12,51,53,3,6,7,8,1,4,7,2,743,21,4,7,5 Paul,10,5,6,1,7,9,34,56,1,76,48,23,222,12,54,67,23,652,1,6,71,3,6,4 

и так далее.

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

3 Solutions collect form web for “Объединение нескольких текстовых файлов в один”

Вы можете читать несколько входных файлов в пакетной программе через стандартные дескрипторы. Помните, что 0 – Stdin, 1 – Stdout и 2 – Stderr, но это оставляет ручки от 3 до 9 доступных! Пакетный файл ниже выполняет слияние файлов с содержимым двух файлов; конечно, до 8 файлов можно комбинировать с этим методом.

 @echo off setlocal EnableDelayedExpansion Rem First file is read with FOR /F command Rem Second file is read via standard handle 3 3< file2.txt (for /F "delims=" %%a in (file1.txt) do ( Rem Read next line from file2.txt set /P line2=<&3 Rem Echo lines of both files echo %%a,!line2! )) 

Более подробная информация здесь: http://www.dostips.com/forum/viewtopic.php?f=3&t=3126

Возможно, вы используете команду unix. Также смотрите этот вопрос в StackOverflow .

Вы можете просто сделать:

 paste -d, file*.txt > combined.txt 

если у вас есть paste . Возможно, вам придется установить cygwin или работать на машине * nix. (Вы сказали, что открыты для всех предложений!) Это зависит от последовательностей файлов данных. Если вы хотите настроить порядок, вы можете записать его, а не использовать glob.

Interesting Posts

Не сочетайте значки на панели задач, но показывайте только значки

REST Complex / Композитные / Вложенные ресурсы

iPhone UITableView – кнопка удаления

Rails 3.1: приложение Engine to Mountable

Можно ли проверить MP3 на повреждение данных?

Получение всех типов в пространстве имен посредством отражения

Как расширить редактор vim до полного экрана в шпаклере?

Требования к минимальной автономной графической карте для двух мониторов

Отключить рекламу в Skype?

Ограничить создание баз данных Microsoft Access для каждого пользователя

Как вы используете Intent.FLAG_ACTIVITY_CLEAR_TOP, чтобы очистить стек активности?

Запись dd на флэш-накопитель USB вызывает массивные чтения

Размер файла подкачки Windows с большой ОЗУ и SSD

Как скопировать большие наборы данных между двумя виртуальными машинами VirtualBox?

Android: настроить меню приложения (например, цвет фона)

Давайте будем гением компьютера.