読者です 読者をやめる 読者になる 読者になる

RedisにKEYとVALUEをsetするPerlスクリプト

概要

Redisに指定したキーとバリューをセットするスクリプトです。
CPANのRedisを使わせてもらってます。
使用するDB番号(dbid)の指定も可能です。

使い方

オプションでキーとバリューを指定出来ます。

redis.pl -k testkey -v testvalue


ヘルプ

-hでヘルプが表示されます。

Usage:
    redis.pl [options...]

    Options: [-h, --help|-k, --key|-v, --value|-m, --man]

Options:
    -h|--help
            Print help

    -k|--key
            Set KEY

    -v|--value
            Set VALUE

    -m|--man
            Print man


スクリプト

#!/usr/bin/env perl

use strict;
use warnings;
use Redis;
use Getopt::Long qw(:config auto_help);
use Pod::Usage;

my $redisserver = '127.0.0.1';
my $redisport = '6379';
my $dbid = '0';
my $key;
my $value;

# Check ARGV.
if (-1 == $#ARGV) {
 pod2usage(2);
}

# Get Options
my %opt = ();
GetOptions(\%opt, 'help|h', 'key|k=s' => \$key, 'value|v=s' => \$value, 'man' ) or die ("ERROR $!");
pod2usage(1) if $opt{help} or $opt{h};
pod2usage(-verbose => 2) if $opt{man};

# Connect Redis
my $r = Redis->new (server => "$redisserver:$redisport", encoding => undef);

# Set KEY,VALUE
$r->select($dbid);
$r->set($key => $value);
my $getvalue = $r->get ($key);
print "key: $key\n";
print "value: $getvalue\n";

$r->quit;


__END__
 
=pod
 
=head1 NAME
 
redis.pl -- test script.
 
=head1 SYNOPSIS
 
B<redis.pl> [options...]

Options: [-h, --help|-k, --key|-v, --value|-m, --man] 

=head1 OPTIONS
 
=over 8
 
=item B<-h|--help>
 
Print help
 
=item B<-k|--key>
 
Set KEY
 
=item B<-v|--value>
 
Set VALUE

=item B<-m|--man>
 
Print man
 
=back
 
=head1 DESCRIPTION
 
This script is Redis testscript.
 
=cut


参考

http://search.cpan.org/~dams/Redis-1.980/lib/Redis.pm

Perlスクリプトのオプションやヘルプ表示を参考にさせていただきました。
http://www.kurobuti.com/blog/?p=5654