londy1992 发表于 2015-04-28 17:33

shell生成数据表

用shell生成一个50000行的数据文件,每行含有三列,列与列之间用竖线('|')分隔,第一列是序号,从1开始累增,第二列是名称,随便生成20位以内的字符串,第三列是日期,要求生成(2014-10-01—2015-03-01)的数据,每个月10000行。

tsh185 发表于 2015-05-05 19:22

#!/bin/sh

function random()
{
        local min=$1;
        local max=$2;
        local range=$(($max - $min + 1));
        number=$(($((10#$(date +%N)))%range + $min));
        echo $number
               
}

for i in {1..50000};
do
        d=`random 1412092800 1425139200`
        echo -n $i && echo -n "|"`date +%s%N` && echo "|"`date -d @$d +%Y-%m-%d`;
done;

londy1992 发表于 2015-05-05 22:23

谢谢你:em03: 回复 3# tsh185


   

londy1992 发表于 2015-05-07 11:40

大哥你好!在上个问题基础上还有几个问题没弄明白,希望你能帮我解决一下,谢谢!
1,日期是时间(2014-10-01—2015-03-01)怎么控制这五个月日期不是随机生成的,按顺序每个月生成10000行,一共50000行

2,怎么在第二列随机生成1到20位的字母加数字字符串

回复 3# tsh185


   
页: [1]
查看完整版本: shell生成数据表