使用awk连接文件并将文件名的一部分添加为字段

时间:2016-11-23 08:17:34

标签: unix awk

我有一组名为

的CSV文件
ASSET_20160101.csv,...,ASSET_20161031.csv

即。 ASSET_{date}.csv

我想在一个csv中连接两列(比如cusip和return),并将日期添加为第三列。这两个相关字段位于固定位置,第1列和第16列。日期不是文件中的列,只存在于文件名中。

我得到了:

awk -F',' '{printf("%5s,%5s,%3.5f\n", FILENAME,$1,$16}' ASSET_* > output.csv

但这不是我想要的,因为它将整个文件名打印为一列。

1 个答案:

答案 0 :(得分:0)

如何在FILENAME函数中包装substr

awk -F',' '{printf("%5s,%5s,%3.5f\n", substr(FILENAME,7,8),$1,$16}' ASSET_* > output.csv