-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathserverCommand.py
More file actions
56 lines (36 loc) · 1.03 KB
/
serverCommand.py
File metadata and controls
56 lines (36 loc) · 1.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# @Time : 2018-12-13 22:35
# @Author : opsonly
# @Site :
# @File : serverCommand.py
# @Software: PyCharm
import paramiko
import time
id_rsa = paramiko.RSAKey.from_private_key_file('/Users/opsonly/.ssh/id_rsa')
ip_list = {
'aliA' : 'xxxxxx',
'aliB' : 'xxxxxxxxx',
'aliC' : 'xxxxxxxx',
#服务器列表
}
def sshLog(sub,date):
shObject = sub
phpDir = '/var/www/html/' + shObject + '/storage/logs/laravel-' + date + '.log'
return phpDir
for k in ip_list:
print(k)
server = input('请选择连接的服务器:')
print('连接成功...')
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname=ip_list[server],port=22,username='ucar',pkey=id_rsa)
sub = 'EnjoyCarCapital'
date = time.strftime("%Y-%m-%d", time.gmtime())
command = input('请输入命令: ')
cmd = command + ' ' +sshLog(sub,date)
print(cmd)
stdin, stdout, stderr = ssh.exec_command(cmd)
result = stdout.read()
print(result)
ssh.close()