From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22984 invoked by alias); 1 Jun 2017 07:41:32 -0000 Mailing-List: contact zsh-users-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Users List List-Post: List-Help: X-Seq: 22721 Received: (qmail 14976 invoked from network); 1 Jun 2017 07:41:32 -0000 X-Qmail-Scanner-Diagnostics: from aok120.rev.netart.pl by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(85.128.245.120):SA:0(0.0/5.0):. Processed in 2.649277 secs); 01 Jun 2017 07:41:32 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=unavailable autolearn_force=no version=3.4.1 X-Envelope-From: psprint@zdharma.org X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: none (ns1.primenet.com.au: domain at zdharma.org does not designate permitted sender hosts) X-Virus-Scanned: by amavisd-new using ClamAV (8) Date: Thu, 1 Jun 2017 09:41:22 +0200 From: Sebastian Gniazdowski To: zsh-users@zsh.org Message-ID: Subject: Zsh plugin =?utf-8?Q?=E2=80=93_?=redis database keys mapper (to Zsh variables) X-Mailer: Airmail (231) MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Hello I've released a plugin, maybe it fits upstream=3F It binds redis keys to = shell parameters. =46or example: % redis-cli -n 3 hmset HASHSET field1 value1 fld2 val2 % zrtie -d db/redis -f =22127.0.0.1/3/HASHSET=22 hset % echo =24=7B(kv)hset=7D field1 value1 fld2 val2 The point is that this is miles away from redis-cli usage. =46or example,= to copy one hash to another: % zrtie -r -d db/redis -f =22127.0.0.1/3/HASHSET1=22 hset1 =23 -r - read-= only % zrtie -d db/redis -f =22127.0.0.1/3/HASHSET2=22 hset2 % hset2=3D( =22=24=7B(kv)hset1=5B=40=5D=7D=22 ) To generate multiple keys for sorted set: % zrtie -d db/redis -f =22127.0.0.1/3/NEWZSET=22 zset % for i in =7Ba..z=7D =7BA..Z=7D; do > zset=5B=24i=5D=3D=24count; > done To remove list element: % redis-cli -n 4 rpush LIST value1 value2 value3 % zrtie -d db/redis -f =22127.0.0.1/4/LIST=22 mylist % mylist=3D( 1 2 3 ) % mylist=5B2=5D=3D() % redis-cli -n 4 lrange LIST 0 -1 1) =221=22 3) =223=22 All that is needed to compile is =60hiredis=60 C library. Project page:=C2=A0https://github.com/zdharma/zredis -- Sebastian Gniazdowski psprint /at/ zdharma.org