У меня есть сценарий:Как применить команду вставки рекурсивно в сценарии
paste -d, <(cut fileA1 -d, -f1-6) <(cut fileB1 -d, -f7) > fileC1
который принимает два csv
текстовые файлы fileA1
и fileB1
, копирует первые шесть столбцов fileA1
и приклеивает их (с заменой) в первые 6 столбцов fileB1
. Затем вывод сохраняется в новый файл fileC1
.
Теперь я хотел бы расширить это до п файлов в folder A
(fileA1...fileAn
) и folder B
(fileB1...fileBn
) и сохраните результат файлов folder C
(fileC1...fileCn
). Все входные файлы имеют равное количество строк.
Я пришел с этим
fileA1=find /path/to/folderA -name '.csv'
fileB1=find /path/to/folderB -name '.csv'
paste -d, <(cut fileA1 -d, -f1-6) <(cut fileB1 -d, -f7) > *.csv
Но это не работает. Есть идеи?
Обратите внимание, что 'cut' и' paste' не являются лучшие инструменты для работы с файлами CSV в первую очередь. Они не могут корректно обрабатывать записи, содержащие поля, содержащие запятую. – chepner