如何使用perl脚本在csv文件中生成随机日期?

时间:2014-05-20 14:07:15

标签: perl csv

之前我没有使用过Perl脚本。下面提到的是我在csv文件中的必需输出。

email_id,          CVupload_date,Login_date,Reg_date
example1@gmail.com,10-10-2010,19-5-2014,1-1-2010
example2@gmail.com,15-1-2011,19-5-2014,10-2-2010
example3@gmail.com,10-11-2012,19-5-2014,13-10-2011

任何人都可以使用Perl脚本帮助我生成像这样的csv文件。我需要在此文件中添加多个记录。我刚给出了我的文件格式示例。在您的帮助下,我将尝试弄清楚Perl脚本的工作原理。

2 个答案:

答案 0 :(得分:2)

你以前用过Perl吗?你有Perl安装吗?你知道如何执行Perl脚本吗?你知道如何从CPAN安装东西吗?

如果上述所有问题的答案都是“不” - 这似乎有点雄心勃勃。如果上述任何/大部分的答案都是“是”那么你可能会有点运气。

Text::CSV_XS是您可能希望用来写入CSV的第三方模块。

您需要做的是将所需数据构建到数组中,然后使用Text :: CSV_XS将该数组打印到文件中。

概要的最后一段显示了如何将数据打印到CSV。

您可以将数据存储在数组数组中,因此数组中的每个项代表CSV中的每一行,而行数组中每个数组项代表行中的每一列:

[
    [ row1xcol1, row1xcol2, row1xcol3 ],
    [ row2xcol1, row2xcol2, row2xcol3 ],
    ...
]

如果您确实尝试了这一点 - 为什么不这样做,这是一个很好的学习经历 - 帮自己一个忙,并将这两个编译指示添加到您的脚本顶部:

use strict;
use warnings;

它们有助于突出愚蠢的错误,否则这些错误都很容易。

答案 1 :(得分:-1)

use strict;
use warnings;
use feature qw/say/;
say 'email_id,          CVupload_date,Login_date,Reg_date';
for (1..30) {
    say 'example', $_, '@gmail.com,25-5-2004,22-6-2014,16-11-2003'; # guaranteed random, generated by random.org
}