Объединение значений из разных файлов в один файл CSV - PullRequest
2 голосов
/ 24 августа 2008

У меня есть пара файлов, содержащих значение в каждой строке.

РЕДАКТИРОВАТЬ:

Я разобрался с ответом на этот вопрос во время написания поста и не понял, что опубликовал его по ошибке в его неполном состоянии.

Я пытался сделать:

paste -d ',' file1 file2 file 3 file 4 > file5.csv

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

Ответы [ 5 ]

2 голосов
/ 24 августа 2008

файл 1:

1
2
3

file2:

2
4
6
paste --delimiters=\; file1 file2

даст:

1;2
3;4
5;6
1 голос
/ 24 августа 2008

У меня такое ощущение, что вы еще не закончили вводить свой вопрос, но я все же попробую. ;)

file1:  file2:  file3:
1       a       A
2       b       B
3       c       C

~$ paste file{1,2,3} |sed 's/^\|$/"/g; s/\t/","/g'
"1","a","A"
"2","b","B"
"3","c","C"

Или,

~$ paste --delimiter , file{1,2,3}
1,a,A
2,b,B
3,c,C
0 голосов
/ 25 августа 2008

Предыдущие ответы с использованием logparser или инструментов командной строки должны работать. Если вы хотите выполнить более сложные операции с записями, такие как фильтрация или объединение, вы можете рассмотреть возможность использования инструмента ETL (на ум приходят Pentaho, Mapforce и Talend). Эти инструменты обычно предоставляют графическую палитру для определения отношений между источниками данных и любыми операциями, которые вы хотите выполнить со строками.

0 голосов
/ 24 августа 2008

Также не забывайте о универсальном LogParser , если вы используете Windows.

Он может выполнять SQL-подобные запросы к текстовым файлам для выполнения всевозможных операций слияния.

0 голосов
/ 24 августа 2008

вам, вероятно, нужно уточнить или пометить свой вопрос, но в его нынешнем виде ответ ниже.

объединение двух файлов в Linux

cat filetwo >> fileone
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...