2013-11-13 3 views
-2

Предположим, у меня есть два CSV-файла, называемых A и B, в папке /home/user по адресу Ubuntu. Что такое команда для добавления B в A? Я предпочитаю команду, которая не делает копию A, но будет принимать ответ, в котором это предпочтение не соблюдается.Добавление двух CSV-файлов вместе через столбцы

Я уже просил случае Python, но этот вопрос не о Python.

головой выглядит так:

headerNameA1,headerNameA2 
    1.12412424,1 
    1,1 
    1,1 
    1,1 

головка B выглядит так:

headerNameB1,headerNameB2 
    1,1 
    1,1 
    1,1 
    1,1 

Моя цель состоит в том, чтобы взять B и добавить его на А так, что А будет выглядеть следующим образом:

headerNameA1,headerNameA2,headerNameB1,headerNameB2 
    1,1,1.12412424,1 
    1,1,1,1 
    1,1,1,1 
    1,1,1,1 
+0

Ваши заголовки и значения не совпадают с вашим желаемым результатом - '1.12412424' должен, предположительно, находиться в том же столбце, что и' headerNameA1' –

+1

. Вы задали [тот же вопрос] (http://stackoverflow.com/questions/ 19948526/appending-two-csv-files-column-wise) немного назад. – devnull

+0

@devnull Другой вопрос был для 'Python', решение которого выглядело бы совершенно и совершенно иначе, чем решение этого вопроса. Пожалуйста, отмените свое голосование в свете этой информации. – user2763361

ответ

3

paste делает это:

$ paste -d',' a b 
headerNameA1,headerNameA2,headerNameB1,headerNameB2 
1.12412424,1,1,1 
1,1,1,1 
1,1,1,1 
1,1,1,1 

Часть -d',' указывает пасту на использование разделителя , (запятая).

+0

Что происходит с 'a' или' b'? Входит ли 'b' в' a'? Удаляет ли 'b' впоследствии? Или третий файл, созданный в том же каталоге? – user2763361

+0

Результат появляется на вашем экране. Если вы хотите сохранить его в файле, а затем перенаправить его: 'paste -d ',' a b> result_file' сохранит его в' result_file'. – fedorqui

+0

Могу ли я сделать 'paste -d ',' a b> a', чтобы перезаписать' a' новым файлом, который содержит как 'a', так и' b 'вместе? – user2763361

Смежные вопросы