Python脚本访问使用ssh和运行命令的主机在主机
问题描述:
我想写一个Python脚本,让我ssh到一台主机,运行curl命令,然后解析命令的输出。Python脚本访问使用ssh和运行命令的主机在主机
我试图像
os.system('ssh HOST')
os.system('curl ...')
然而,curl命令不会在服务器上执行。我进入服务器,但没有从python脚本连接到它。我需要能够执行curl命令和访问输出,所以我可以解析它。任何想法我可以做到这一点?谢谢。
答
要访问你运行任何命令的输出,使用subprocess
模块。它对你运行的os命令提供了很多控制。这是一段代码片段。
import subprocess
process_object = subprocess.Popen(['cat','myfile.txt'],stdout=subprocess.PIPE , stderr = subprocess.STDOUT) ;
output = process_object.stdout.read()
同样,您的使用['ssh','HOST','argument2','argument3']
为您的实施。我不确定这是否能解决你的问题。但它有助于获得输出。
+0
我怎么会拿在卷曲参数作为来自用户的输入的一部分吗?例如参数2必须像“卷曲-s‘输入’”,用户可以指定输入。 – ashkash
为什么不使用pycurl? –