Как объединить все рекурсивный CSV-файл в 1 CSV - PullRequest
0 голосов
/ 29 апреля 2020

У меня длинный каталог с 152000 CSV-файлами.

 find . -name "*.csv. | wc -l"
152000

К этому списку я получил find . -name "*.csv"

./2015/2015-121/foo.csv
./2015/2015-19/Z00.csv
./2015/20888-/woo.csv
./2015/20xx.csv
./2015/foo.csv
.
.
.
and so on

Большинство файлов имеют такие же имена, как зоопарк или woo

Я пытался добавить все файлы в 1 каталоге, а затем выполните команду

cat `ls -v | grep .csv` > final.csv

Так что мне нравится

 mv ./2015-09/woo.csv ../2015/
 mv ./2015-01/woo.csv ../2015/
 mv ./2015-02/zoo.csv ../2015/
.
.
.
.
and so on

, но он заменяет старый woo.csv на. new woo.csv

В любом случае, я могу добавить 1 файл, например, final.csv

или

. Любым возможным способом добавить все файлы в 1 каталог, поэтому новый woo. CSV не заменяет старый woo.csv

1 Ответ

1 голос
/ 29 апреля 2020

Вы можете сделать это, используя команду find:

find . -name "*.csv" -exec cat {} + > /tmp/final.csv 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...