更方便地处理 Redis 存储的 json/protobuf/binary/csv/yaml 数据

2020-01-13 23:01:02 +08:00
 scriptB0y

Redis 是 binary safe 的,所以经常在里面用 string 格式存储一些 json 等格式化的数据。但是用 redis-cli GET 出来,在 debug 的时候很不友好。

所以我写了一个客户端,可以和 shell 连接起来,用 | 将 Redis 的 Response 通过 pipe 用 shell 的其他工具,比如 jq/fx/rg/sort/uniq/cut/sed/awk 等处理。假如你用其他格式的话,也可以在 GET 后面加 shell 命令来处理,非常方便。

(觉得方便的话请给一个 star,还支持自动补全,语法高亮等其他功能,欢迎提宝贵建议)

项目地址: https://github.com/laixintao/iredis

安装方式:

pip install iredis==0.8.7  # lastest version for now

3255 次点击
所在节点    分享创造
10 条回复
miao1007
2020-01-13 23:31:59 +08:00
腿特群众
scriptB0y
2020-01-13 23:39:46 +08:00
@miao1007 谢谢谢谢!
Maboroshii
2020-01-14 00:19:44 +08:00
看起来很 nice,star 了,学习一下。
scriptB0y
2020-01-14 00:48:09 +08:00
scriptB0y
2020-01-14 00:48:48 +08:00
@Maboroshii 手机点错发出去了😂 谢谢!
cxyfreedom
2020-01-14 00:52:20 +08:00
推特看到的,支持一下,感觉不错
binux
2020-01-14 08:37:00 +08:00
我为什么不在 redis-cli 后面直接接 command 再直接 | ?
scriptB0y
2020-01-14 08:51:56 +08:00
@binux 也可以。但是要退出 redis-cli,iredis 里面如果你不知道要找哪个 key 的话,找到了可以在里面处理,不用退出,如果 key 很长的话也不用复制到命令行,iredis 可以自动补全。

但其实并没有 redis-cli 做不到非 iredis 才能做到的功能,甚至用 nc 都能提到 redis-cli,只是有些工具更方便(我理解)

btw iredis 在命令行管道方面和 redis-cli 表现是一样的,iredis get json | jq . 也可以的。
binux
2020-01-14 10:41:39 +08:00
@scriptB0y #8 为什么要退出?开两个窗口不就好了?
scriptB0y
2020-01-14 10:50:36 +08:00
@binux 是的,假如是用 tmux 这样的工具的话,一个 redis-cli + 一个 shell 效果是一样的! (但是 iredis 可以自动补全嘛,少了一次复制 XD

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/637647

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX