簡體   English   中英

Linux:如何按順序串聯CSV文件,並且僅保留要串聯的第一個文件的標題?

[英]Linux: how to concatenate CSV files in an order and only keep the header of the first file to be concatenated?

我需要將一些名稱后面帶有數字的csv文件連接為:

file1.csv, file2.csv, ..., file15.csv

這些文件具有相同的標頭,我只想保留第一個文件的標頭。

閱讀許多文章后,我發現了一種連接文件並保留標題的方法,但是未保留連接文件的順序:

awk 'FNR==1 && NR!=1{next;}{print}' file$*.csv > file.csv

錯誤的順序是因為通配符按字典順序而不是數字順序擴展。 您可以使用范圍表達式而不是通配符來獲得數字順序。

awk 'FNR==1 && NR!=1{next;}{print}' file{1..15}.csv > file.csv

或者,您可以更改命名樣式,以使其前導零, file01.csvfile02.csv等。

另請參閱具有數字順序的glob,以了解其他技術。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM