【问题标题】:Mass editing CSV files through command line?通过命令行批量编辑 CSV 文件?
【发布时间】:2013-03-20 01:04:36
【问题描述】:

我在某个目录中有大量 CSV 文件。

我需要将所有 CSV 文件中的 A1 字段更改为:电子邮件

有什么方法可以在一个命令中对所有文件执行所有操作吗?

或者如果这更容易:我只需要 Email 成为每个文件的第一行,所以如果有办法将Email 作为每个文件的第一行大量插入'也会很完美!

【问题讨论】:

  • 什么操作系统?你介意使用 perl 还是 python?
  • Perl 可以为我工作。
  • 等等,是插入还是替换?

标签: csv command-line command


【解决方案1】:

这是给你的快速而肮脏的例子:

replace="Email"
path="./"
ext="csv"

for f in $path*.$ext
do
    search=$(head -1 $f | awk '{print $1}')
    echo Changing: "$f"
    sed -i -e "s/$search/$replace/" "$f" && echo Done
done

【讨论】:

    猜你喜欢
    • 2013-11-20
    • 2017-09-16
    • 1970-01-01
    • 2013-10-09
    • 2016-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多