我想标准化使用json作为我做各种编程事项的数据交换格式吗? [到目前为止除了MySQL以外的一切:-(]
我目前的问题是: 使用json格式通过命令行将参数传递给perl脚本的PRO和CON是什么?
以下是我想出的一些内容。如果这在长期内不可行,请告诉我
PRO:
CON:
这是命令行的样子:
perl perlScript.pl {\"key\ 1\": \"value\ 1\", \"key\ 2\" : \"value\ 2\", \"key\ 3\" : 0 }
这是脚本的样子:
#!/usr/bin/perl
# Pass arguments to script on command line via json
use JSON;
# Use loop to combine all command line arguments into one variable
my $json = '';
foreach my $arg(@ARGV) {
$json .= $arg;
}
# convert variable to hash
my $hash = decode_json($json);
use Data::Dumper;
print Dumper(\%$hash);
答案 0 :(得分:7)
Getopt :: Long模块满足您的所有要求/专业人员,具有以下额外好处
Getopt :: Long的PROS
json上唯一的PRO就是如果期望这将作为基于Web的API或工具提供,这似乎不是这里的情况。
这并不是说JSON在CLI工具中没有地位,它被广泛用作配置文件,复杂数据存储,软件(RPC)之间的远程/外部调用的基于文件的资源,以及提供网络前端。