远程登录 redis bash 脚本

Posted

技术标签:

【中文标题】远程登录 redis bash 脚本【英文标题】:telnet redis bash script 【发布时间】:2013-10-31 05:03:34 【问题描述】:

如何在 bash 脚本中从远程 redis 服务器上的 telnet 命令提取输出。

我愿意:

telnet remote-redis-ip 6379 
LRANGE mylist 0 -1

并将结果保存在变量中。我怎样才能在 bash 脚本下达到这个目标?

谢谢,

【问题讨论】:

要将命令输出保存在变量中,请执行var=$(command) 是的,我知道,但如果我尝试: var="$(telnet remote-redis-ip 6379 | echo "LRANGE mylist 0 -1")" 它不起作用 嗯,管道后的回声没有任何意义。你想让我做什么? telnet remote-redis-ip 6379LRANGE mylist 0 -1 的输出是什么? telnet 的输出是“已连接”并且 LRANGE mylist 0 -1 返回一个 IP 列表。 OK 所以你想通过telnet连接redis,然后执行一个命令。见***.com/q/7013137/1983854,然后 【参考方案1】:

试试这个

RET=`telnet remote-redis-ip 6379 << EOF
LRANGE mylist 0 -1
EOF`

echo $RET

我认为使用 fedorqui 发布的 expect automating telnet session using bash scripts 会更好

【讨论】:

以上是关于远程登录 redis bash 脚本的主要内容,如果未能解决你的问题,请参考以下文章

如何在 bash 脚本中的流水线命令之间插入延迟。例如。猫文件 |远程登录 mail.domain.com 25

远程登录机器的脚本

详解Redis开启远程登录连接

怎么在一个shell脚本中执行远程主机的另一个shell脚本?? ssh已经可以无密码登录了。

在 NodeJS 中连接到远程登录服务器

解决SSH远程执行命令找不到环境变量的问题