删除多个csv文件的第一行或行(标题)和第一列

时间:2015-03-22 22:46:10

标签: linux batch-processing

我有数千个csv文件,我想删除第一行(标题)和第一列。这是我的代码,但它覆盖了没有内容的原始文件:

表示* .csv中的j;做sed'1d'$ j | cut -d,-f 1> “$ J”;完成

由于

1 个答案:

答案 0 :(得分:0)

  

这是我的代码,但它覆盖了没有的原始文件   含量

这是因为输出> "$j"的重定向导致文件在读取内容之前被截断为零大小。为避免这种情况,可以使用临时输出文件 代码中的一个小错误是您指定了要删除的列而不是要保存在cut命令中的列。

更正后的代码:

for j in *.csv; do sed 1d $j | cut -d, -f2- >new$j && mv new$j $j; done