Как я могу напечатать столбец в текстовом файле, чтобы строки, используя команду Unix?

Используйте почти любой SAX Parser для потоковой передачи файла за раз.

1
задан gyrous 21 July 2010 в 12:27
поделиться

3 ответа

awk -F"," '{ 
   a[$1];
   b[$1]=b[$1]","$2 
   c[$1]=c[$1]","$3
   d[$1]=d[$1]","$4
   e[$1]=e[$1]","$5 }
END{ for(i in a){ print i,b[i],c[i],d[i],e[i] } } ' file
2
ответ дан 2 September 2019 в 22:52
поделиться

Вы могли бы написать скрипт на Python, чтобы это исправить:

numbers = []
dacs = []
amountdacs = []
expdates = []
for row in text:
    number, dac, amountdac, expdate, zero = row.split(',')
    numbers.append(number)
    dacs.append(dac)
    amountdacs.append(amountdac)
    expdates.append(expdate)
# print things out however you want them

Вы, вероятно, могли бы сделать что-то подобное в perl, если бы вы были более легкими, чем я.

0
ответ дан 2 September 2019 в 22:52
поделиться

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

, осталась только задача - вам нужно использовать свои навыки написания сценариев, чтобы

  • взять кусок данных, то есть 10 строк вовремя.
  • удалить первый столбец из 10 строк и транспонировать данные
  • добавить значение первого столбца (здесь 1111 или 2222 или 3333)

все вышеупомянутые 3 шага должны выполняться рекурсивно для всех строк во входном файле.

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

0
ответ дан 2 September 2019 в 22:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: