Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Shell 将带有递增整数的列添加到多个csv文件_Shell_Csv_Awk_Cat - Fatal编程技术网

Shell 将带有递增整数的列添加到多个csv文件

Shell 将带有递增整数的列添加到多个csv文件,shell,csv,awk,cat,Shell,Csv,Awk,Cat,我有一个包含数千个csv文件的目录,每个文件有64列和700多行。我想合并导入到数据库表中 使用cat,组合文件没有问题。但是,每个文件都代表一个单独的事件,因此在查询数据库时,我希望能够从单个文件中提取行 有没有一种方法可以在梳理每个文件之前向它们添加一个递增的整数 例如: 日志文件1 a、 b、c、d a、 b、c、d a、 b、c、d 日志文件2 a、 b、c、d a、 b、c、d a、 b、c、d 到 日志文件1 1,a,b,c,d 1,a,b,c,d 1,a,b,c,d 日

我有一个包含数千个csv文件的目录,每个文件有64列和700多行。我想合并导入到数据库表中

使用cat,组合文件没有问题。但是,每个文件都代表一个单独的事件,因此在查询数据库时,我希望能够从单个文件中提取行

有没有一种方法可以在梳理每个文件之前向它们添加一个递增的整数

例如:

日志文件1

  • a、 b、c、d
  • a、 b、c、d
  • a、 b、c、d
日志文件2

  • a、 b、c、d
  • a、 b、c、d
  • a、 b、c、d

日志文件1

  • 1,a,b,c,d
  • 1,a,b,c,d
  • 1,a,b,c,d
日志文件2

  • 2,a,b,c,d
  • 2,a,b,c,d
  • 2,a,b,c,d

谢谢

有了awk,你可以写:

awk 'FNR==1 {count++} {print count "," $0}' *.csv
当处理每个文件的第一条记录时,递增“count”变量。

使用GNU awk:

awk '{print ARGIND "," $0}' *.csv