[英]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.csv
, file02.csv
等。
另請參閱具有數字順序的glob,以了解其他技術。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.