linux - 如何将 csv 文件中的行合并到一个文件中,不包括标题行

标签 linux bash unix

我有许多使用以下格式的 csv 文件:

file_1.csv
line 1 -- header row
line 2 -- header row
line 3 -- data row

file_2.csv
line 1 -- header row
line 2 -- header row
line 3 -- data row
...
file_n.csv
line 1 -- header row
line 2 -- header row
line 3 -- data row

并想编写一些脚本,将它们全部放在一个文件中,只复制一次 2 个标题行,如下所示:

fileMerged.csv
line 1 -- header row
line 2 -- header row
line 3 -- data row from file_1
line 4 -- data row from file_2
...
line n+2 -- data row from file_n

在 Linux 服务器中实现此目标的最佳方法是什么?

最佳答案

使用 awk:

awk 'FNR==NR||FNR>2' file_*.csv > fileMerged.csv

关于linux - 如何将 csv 文件中的行合并到一个文件中,不包括标题行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40922219/

相关文章:

c - 在 C 中观察另一个 linux 进程的网络事件的方法

linux - 使用 ls 和 find 命令删除旧文件

bash - 根据内容重命名文件

linux - 如何避免与发送到派生进程的数据匹配

linux - 找不到导出命令

c - Unix 中的 Strace 命令

linux - 让 Squid 对第 3 方过滤器不可见

linux - Net::Bluetooth 不发现设备

bash - $user 或 $whoami 不能在 bash shell 脚本中工作

linux - bash 提示用户编辑字符串并输入