如何使用python执行远程shell脚本

如何使用python执行远程shell脚本,第1张

最近有个需求就是页面上执行shell命令,第一想到的就是ossystem,

代码如下:

ossystem('cat /proc/cpuinfo')

但是发现页面上打印的命令执行结果 0或者1,当然不满足需求了。

尝试第二种方案 ospopen()

代码如下:

output = ospopen('cat /proc/cpuinfo')

print outputread()

通过 ospopen() 返回的是 file read 的对象,对其进行读取 read() 的 *** 作可以看到执行的输出。但是无法读取程序执行的返回值)

尝试第三种方案 commandsgetstatusoutput() 一个方法就可以获得到返回值和输出,非常好用。

代码如下:

(status, output) = commandsgetstatusoutput('cat /proc/cpuinfo')

print status, output

Python Document 中给的一个例子,

代码如下:

>>> import commands

>>> commandsgetstatusoutput('ls /bin/ls')

(0, '/bin/ls')

>>> commandsgetstatusoutput('cat /bin/junk')

(256, 'cat: /bin/junk: No such file or directory')

>>> commandsgetstatusoutput('/bin/junk')

(256, 'sh: /bin/junk: not found')

>>> commandsgetoutput('ls /bin/ls')

'/bin/ls'

>>> commandsgetstatus('/bin/ls')

'-rwxr-xr-x 1 root 13352 Oct 14 1994 /bin/ls'

基于文本文档(Markdown) 设想好需要的基本需要的表、字段、类型;

使用 Rails Migration 随着功能的开发逐步创建表;

随着细节功能的开发、需求,逐步增加字段,删除字段,或者调整字段类型;

第一个 Release 的时候清理 Migrations 合并成一个;

随着后期的改动,逐步增加、修改、删除字段或表。

基本上我的所有项目都是这么搞的,这和项目是否复杂无关。

所以我前面为什么说思路需要转变。

可以使用python+paramiko。 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。 使用paramiko可以很好的解决以下问题: 需要使用windows客户端, 远程连接到Linux服务器,查看上面的日志状态,批量配置远程服务器,文件上传,文件下载等 具体可以参考: >

首先需要和客户端进行通信,就跨平台来说,自己写个server端在客户端上运行,发送指令,接收回传即可

linux下有很多选择,基于ssh的fabric、ansble、以及python模块paramiko都可以做到无客户端执行远端 *** 作

sockettimeout: timed out连接超时,需要你先运行服务端的代码

sr = ThreadedServer(TestRpyc, hostname = "0000", port=9999, auto_register=False)  

srstart()

添加下hostname试一下。

如果解决了您的问题请采纳!

如果未解决请继续追问

以上就是关于如何使用python执行远程shell脚本全部的内容,包括:如何使用python执行远程shell脚本、python如何打开远程文件、python远程 *** 作windows服务器有什么方案等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9546292.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存