免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3897 | 回复: 4
打印 上一主题 下一主题

请教个python执行ssh命令的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-04-25 11:52 |只看该作者 |倒序浏览
本帖最后由 本大王 于 2013-04-25 11:58 编辑

各位  我现在想用python写个ssh登陆的脚本 现在遇见一个问题  就是我不太清楚python如何进行变量替换的(机器间已做好ssh互认)

1.1.1.1是我的时间服务器
比如说beijing_IP 里面有两个IP
1.1.1.2
1.1.1.3

import os
IP_FILE=open('/home/cetvuser/beijing_IP','r')
LINES=IP_FILE.readlines()
for i in LINES:
          i=i.strip()
          os.system("ssh i;ntpdate 1.1.1.1")     这个地方应该怎么写?
IP_FILE.close()

报错内容如下:
[root@xxx]# ./time.py
ssh: i: Name or service not known
25 Apr 11:42:13 ntpdate[7975]: no server suitable for synchronization found
ssh: i: Name or service not known
25 Apr 11:42:17 ntpdate[7979]: no server suitable for synchronization found
ssh: i: Name or service not known

论坛徽章:
1
15-16赛季CBA联赛之新疆
日期:2017-03-09 12:33:45
2 [报告]
发表于 2013-04-25 12:51 |只看该作者
回复 1# 本大王


    变量替换,看你要在哪里替换。给你一个简单的例子。
  1. os.system('ssh %s'%(ip))
复制代码
这个IP就是你想要的替换的IP。

论坛徽章:
0
3 [报告]
发表于 2013-04-25 13:32 |只看该作者
回复 2# jeppeter


    哈哈  还真是    谢谢!!!!!!!

论坛徽章:
1
2015七夕节徽章
日期:2015-08-21 17:58:43
4 [报告]
发表于 2013-04-25 15:55 |只看该作者
os.system("ssh %s 'ntpdate 1.1.1.1 && exit'" % ip)

论坛徽章:
0
5 [报告]
发表于 2013-04-25 16:31 |只看该作者
有专门的第三方库
https://github.com/paramiko/paramiko

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP