【问题标题】:Pass multiple commands over SSH and return output通过 SSH 传递多个命令并返回输出
【发布时间】:2021-02-25 23:21:21
【问题描述】:

我正在尝试编写一个简短的脚本,它将通过 SSH 连接到远程服务器,执行一些命令,并返回输出价格等,我将在本地对其进行解析。

到目前为止,我正在尝试这个,但它只是挂起:

ssh user@server_name 'redis-cli; hmget IBM 上次更新;退出'> output.txt

实际输出为 3 行:

  1. “1234.56”
  2. “IBM”
  3. “2020 年 11 月 13 日 17:44:02”

有什么方法可以运行这些命令并捕获这 3 行代码?

谢谢!

【问题讨论】:

  • 所以你先登录到服务器然后获取你想要的数据?还需要密码吗?
  • 不,我设置了 ssh 密钥。所以,只需 ssh user@server_name

标签: ssh command output


【解决方案1】:

好的,我要做的就是编写一个执行以下操作的脚本:

1) 连接到服务器 并确保它已连接(你可以使用睡眠命令)

  1. 将命令输出保存到文件中:

    Command1 > output.txt
    Command2 >> output.txt 
    

“>”用于首先创建文件,“>>”用于向同一个文件添加更多数据

等等

  1. 使用scp(或您想要的任何其他工具)将文件发送回本地计算机

在这种情况下,它真的很简单,所以命令是:

scp “output.txt” localuser@localserver:Destination/

【讨论】:

  • 好吧,我很高兴你这样做了 ? 请考虑接受我的回答,如果社区知道你的问题已经解决并且我和你都提高了我们的声誉
猜你喜欢
  • 2016-07-25
  • 2016-03-06
  • 1970-01-01
  • 1970-01-01
  • 2019-09-29
  • 2011-12-11
  • 1970-01-01
  • 1970-01-01
  • 2012-06-06
相关资源
最近更新 更多