usage.txt 5.1 KB
Newer Older
aaronchen2k2k's avatar
aaronchen2k2k 已提交
1
ZenData是一款通用的数据生成工具,您可以使用yaml文件来定义您的数据格式,然后交由zendata生成。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
2 3 4 5 6

参数:

  -d  --default    默认的数据格式配置文件。
  -c  --config     当前场景的数据格式配置文件,可以覆盖默认文件里面的设置。
陈琦 已提交
7
  -o  --output     生成的数据的文件名。可通过扩展名指定输出json|xml|sql|csv|xlsx格式的数据。默认输出原始格式的文本数据。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
8 9 10 11
  -n  --lines      要生成的记录条数,默认为10条。

  -F  --field      可通过该参数指定要输出的字段列表,用逗号分隔。 默认是所有的字段。
  -t  --table      输出格式为sql时,需通过该参数指定要插入数据的表名。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
12
      --dns        指定MySQL数据源,用于直接插入数据到MySQL数据库表。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
13
      --clear      插入数据前,删除已有数据。
陈琦 已提交
14
  -T  --trim       输出的字段去除前后缀,通常用在生成SQL格式输出或解析测试数据时。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
15
  -H  --human      输出可读格式,打印字段名,并使用tab键进行分割。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
16 17
  -r  --recursive  递归模式。如不指定,默认为平行模式。平行模式下各个字段独立循环。
                   递归模式下每个字段的取值依赖于前一字段。可增强数据的随机性。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
18

aaronchen2k2k's avatar
aaronchen2k2k 已提交
19 20
  -p  --port       在指定端口上运行HTTP服务。可通过http://ip/接口获得JSON格式的数据。服务模式下只支持数据生成。
  -b  --bind       监听的ip地址,默认监听所有的ip地址。
陈琦 已提交
21
  -R  --root       指定数据生成命令或运行HTTP服务的根目录。客户端可调用该根目录下面的配置文件。如果不指定,取zd可执行文件所在目录。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
22

aaronchen2k2k's avatar
aaronchen2k2k 已提交
23
  -i  --input      指定一个数据库Schema或文章文本文件,解析生成yaml配置文件。需通过-o参数指定一个输出的目录。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
24
  -D  --decode     根据指定的配置文件,将通过-i参数指定的数据文件解析成json格式。
25
  -a  --article    将指定的文件或目录下扩展名为.txt的文件,转换成文章yaml配置,输出到-o参数指定的目录下。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
26

陈琦 已提交
27 28
  -l  --list       列出当前目录下所有的用户数据定义。
  -L               列出ZenData安装目录下所有数据定义。
29
  -v  --view       查看数据定义的详细信息。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
30
  -h  --help       打印帮助。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
31
  -e  --example    打印示例的数据格式配置文件。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
32 33 34

命令行模式举例:

35 36 37 38
$>zd.exe -d demo\default.yaml                                        # 根据-d参数指定的配置文件生成10条记录。
$>zd.exe -c demo\default.yaml                                        # 根据-c参数指定的配置文件生成10条记录。
$>zd.exe -c demo\default.yaml -r                                     # 根据-c参数指定的配置文件,采用递归的方式生成10条记录。
$>zd.exe -d demo\default.yaml -c demo\test.yaml -n 100               # -c和-d两个文件的配置合并,输出100条记录。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
39

40 41 42
$>zd.exe -d demo\default.yaml -c demo\test.yaml -n 100 -o test.txt   # 输出原始格式的数据。
$>zd.exe -d demo\default.yaml -c demo\test.yaml -n 100 -o test.json  # 输出json格式的数据。
$>zd.exe -d demo\default.yaml -c demo\test.yaml -n 100 -o test.xml   # 输出xml格式的数据。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
43 44
$>zd.exe -d demo\default.yaml -n 100 -o test.sql -t user             # 输出针对user表的insert语句。
$>zd.exe -d demo\default.yaml -n 100 -o test.sql -t user --trim      # 输出针对user表的insert语句,去掉前缀和后缀。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
45
$>zd.exe -c test\test-sql.yaml -t zendata.table_a --trim -dns mysql://root:P2ssw0rd@127.0.0.1:3306/zendata#utf8 --clear # 插入数据到MySQL数据表。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
46

aaronchen2k2k's avatar
aaronchen2k2k 已提交
47
$>zd.exe -i demo\zentao.sql -o db                                    # 根据sql的定义生成各表的yaml文件,存储到db目录里面。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
48
$>zd.exe -i demo\article.txt -o demo                                 # 转换文章为yaml配置,输出到demo目录下。
49
$>zd.exe -c demo\default.yaml -i test.txt --decode                   # 将-i指定的文件根据-d参数的配置进行解析。
aaronchen2k2k's avatar
1.1  
aaronchen2k2k 已提交
50

51
$>zd.exe -l                                                          # 列出所有內置数据。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
52 53 54
$>zd.exe -v address.cn.v1                                            # 查看內置Excel文件data/address/cn.v1.xlsx中的数据表。
$>zd.exe -v address.cn.v1.china                                      # 查看內置Excel文件china数据表中的数据。
$>zd.exe -v ip.v1.yaml                                               # 查看內置文件yaml/ip/v1.yaml定义的数据。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
55 56 57

服务模式举例:

58
$zd.exe -p 80                                                        # 监听80端口,以zd.exe文件所在目录为根目录。
59
$zd.exe -p 80 -R d:\zd\config                                        # 监听80端口,以d:\zd\config为根目录。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
60 61 62

客户端调用:

陈琦 已提交
63
$curl http://localhost:8848/?d=demo/default.yaml&c=demo/config.yaml&n=100&T=true    # 通过GET方式指定服务器端配置文件。
aaronchen2k2k's avatar
aaronchen2k2k 已提交
64 65
$curl http://localhost:8848/?default=demo/default.yaml&output=test.sql&table=user   # 参数名可以用全拼。
$curl -i -X POST http://localhost:8848?lines=3 -F default=@demo/default.yaml        # 可以通过POST方式上传配置文件。