Есть файл (большой, несколько сотен мб) состоящий из большого количества двухмерных массивов чисел.
перемажаются они двумя строчками текста. Вид следующий
text text
another text
1 20 30 40 50
2 21 31 41 51
3 22 32 42 52
text text
another text
1 60 70 80 90
2 61 71 81 91
3 62 72 82 92
Необходимо из каждого такого массива скопировать столбец с номером N,
после чего вставить в новый файл столбцами. К примеру используюя массивы выше, получить такое:
Если выбран 3-й столбец:
1 30 70
2 31 71
3 32 72
Файл состоит из пары сотен массивов размером 200 на 200, т.ч. вручную затруднительно.
Заранее премного благодарен и прошу прощения если повтор.
Если размеры массивов фиксированы, а в 1м столбце везде номера строк, то:
* grep'ом выбираем только строки с числами
* cut'ом выбираем только 1й и N'й столбцы
* split'ом режем на отдельные файлы (по массиву, теперь двухстолбцовому, на файл)
* paste'ом соединяем в одну таблицу
* удаляем временные файлы.
* cut'ом выбираем только 1й и N'й столбцы
* split'ом режем на отдельные файлы (по массиву, теперь двухстолбцовому, на файл)
* paste'ом соединяем в одну таблицу
Хм… а почему не сразу вырезаем нужные столбцы cut'ом? Он, в общем-то, умеет и более 2-х столбцов.
Хм… а почему не сразу вырезаем нужные столбцы cut'ом? Он, в общем-то, умеет и более 2-х столбцов.
Потому что по условию эти "более 2-х столбцов" должны быть взяты из разных таблиц. Первый столбец результата - общий первый столбец всех таблиц, остальные - N'й столбец из каждой первоначальной таблицы.