Выбирать столбцы из файла csv переменной длины

У меня есть два файла CSV, в которых есть столбец, который уникален для каждой строки в каждом файле, например, ID. У файлов нет заголовка. Файл_2 имеет столбцы переменной длины, например

1,2,3 4,5,6,7,8 

Сначала я присоединился к двум файлам, основанным на общем столбце, путем сортировки с помощью команды sort и использования соединения в этом столбце. Теперь у меня есть один файл csv с столбцами переменной длины.

Я хочу выбрать столбцы в следующем порядке:

 second column, first column, third column, {from 4th column onwards every 3rd column till end of row. eg, 4,7,10...} 

Я попробовал awk -F "\"*,\"*",\"*" '{print $2 $1 $3}' joinedfile.csv

и смог получить эти три столбца. Тем не менее, нет идеи справиться с остальными. Я знаю, как это сделать в python. Я хотел бы знать, как это сделать в командной строке, например cut или awk. Я предполагаю, что цикл while в awk может помочь, но не уверен, как его построить.

One Solution collect form web for “Выбирать столбцы из файла csv переменной длины”

Что-то вроде:

 awk -F, '{ # print first three columns printf("%s,%s,%s", $2,$1,$3); #for all other columns for ( i = 4; i < NF; i++ ) { # if column number every third if ( ( i - 4 ) % 3 == 0) { printf(",%s", $i); } } #print newline print ""; }' your_file.csv 
  • Создание следующего доступного имени файла для шаблона (02-output.log и т. Д.)
  • Петля игнорирует изменение переменной из подоболочки в фоновом режиме
  • Расширение параметра Shell
  • Создание скрипта sh в программе
  • Баш читал с разделителем прошлых строк
  • имя сценария скрипта echo text name для циклизации нескольких текстов
  • Развертывание Jenkins не передается переменной java
  • chmod не работает на Mac
  • Установка XDG_DATA_HOME и XDG_CONFIG_HOME для компиляции / для каждой программы
  • Как я могу запускать сценарии командной оболочки Linux, которым нужна привилегия root с веб-страницы
  • найти и удалить дубликаты в каталоге
  • Interesting Posts

    / Принадлежит postfix: root после установки iRedMail

    Как перезагрузить / закрыть изящно в Awesome WM?

    Запуск различных команд оболочки, когда NUT сообщает о низком заряде ИБП

    Есть ли способ уменьшить время загрузки xquartz на osx?

    Создание текстового файла календаря в Linux

    Пользовательский интерфейс зависает, когда я открываю много вкладок в браузере

    Как предоставить rwe разрешения для root, admin и user1; в каталоге, где все файлы и папки принадлежат пользователю1 (rwe)

    Samba: ошибка монтирования: не удалось разрешить адрес для XXX: неизвестная ошибка

    Переименование нескольких файлов и добавление даты перед файлами

    Ищете способ улучшить обнаружение синаптической / тачпадной ладони

    Как я могу предотвратить выполнение части / etc / profile в моей оболочке входа?

    Как установить дистрибутив Linux из Windows без CD или USB?

    Как напечатать образец текста в цвете?

    Как я могу записать выходные данные сценария Shell в файл журнала

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

    Linux и Unix - лучшая ОС в мире.