1. 自动脚本ssh登陆
2. 执行原目录下的stop.sh文件,完成shutdown程序
3. 把原程序拷贝一份作为备份
4. 把本地新的程序通过scp上传到运行目录下
5. 执行start.sh
6. 执行tail,获取最新的日志打印
#!/usr/bin/python
# -*- coding: utf-8 -*-
import traceback
import paramiko
from scp import SCPClient
def main():
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
key = paramiko.RSAKey.from_private_key_file('F:\pub.key')
ssh.connect(hostname='111.111.111.111',
port=22,
username='root',
pkey=key)
scp = SCPClient(ssh.get_transport())
scp.put('./ssh_upload.py', '/root/ssh_upload.py')
scp.get('/root/ssh_upload.py', './ssh_upload.py.2')
_, stdout, _ = ssh.exec_command("tail -n 20 /var/log/mylog/access.log")
tail_logs = ''.join(stdout.readlines())
scp.close()
ssh.close()
print tail_logs
if __name__ == '__main__':
try:
main()
except:
print traceback.format_exc()