ruby - get命令输出,通过ssh执行

时间:2017-04-02 01:19:16

标签: ruby ssh terminal

我是ruby的新手,我尝试了很多,但我无法理解这一点!

我需要执行此命令: 我尝试使用Open3.popen,后退,但输出没有返回,它只返回ssh命令,但我需要输出hive查询。

ssh -C -i key_rsa -l login_name server_name "/usr/bin/hive -i .hiverc -e \" some_query \"" > somefile.csv

如何获得输出& hive查询和ssh都有错误吗?

提前致谢,请尽早告诉我

1 个答案:

答案 0 :(得分:0)

通过登录目标服务器并手动运行查询,确保查询首先输出到STDOUT,从而简化。接下来在ssh命令后面的查询周围使用单引号。最后,在确定各个部分正在工作时添加重定向:

    ssh -C -i key_rsa -l login_name server_name '/usr/bin/hive -i .hiverc -e " some_query "'