返回列表 发新帖

python操作ssh实现服务器日志下载的方法

636.5k 12
swmozowtfl 发表于 2015-7-10 20:45:36|湖北 | 查看全部 阅读模式
  本文实例讲述了python操作ssh实现服务器日志下载的方法。分享给大家供大家参考。具体实现方法如下:5 E5 B# g- `+ H8 Q- z
  ?
- L' D3 G% d# V" j
            1) Y2 Y/ l7 ]4 f9 X6 g6 [2 U% D0 v
            28 q" u% t8 `0 z2 V. A
            3
& Q: T) i$ q$ N0 b* P6 k& \2 Q7 W6 ]            4* `- m; @$ D/ ?
            5% s" _5 x; p- D, d' }" S! I
            65 P0 \; `! S5 o2 V' m
            70 n- ~& k8 N  y
            8
' c* m/ K) J  Q            9
! x& |) u0 I! A, x$ h! U  y            10
* I2 L$ N1 A) a  o            11. W& L$ K0 v$ |: w& j
            123 p+ ?5 t1 s( p4 Q' w1 v
            13
& a  U1 D, o& f6 [: ]' d            14
" s9 w; b/ E  T/ c9 q% S+ K; [: Y$ T            15
# P+ I. _: [+ G8 u- v5 y            16
7 O7 }4 c8 Y7 u7 u            17, W" Y! U# _' s
            18
4 P- Z- B# ]$ F# e7 ^# v            19
) b% R( h0 C% Y8 z1 V8 D            20. C# }3 i/ I3 E* Y
            21
* x" i8 @: _0 ^" B  i! k            22
- [( f4 A- a, h5 w& \            235 I' }0 g( {4 \; L$ T1 e) q
            244 l1 C( t8 k+ G- p" C
            25
4 n) |) z! j6 M' }            26
: v3 I1 h$ P* _( L1 d            27
" q& D8 u" e8 P5 u% [- q- t            281 j" M% m9 r/ W7 [
            29  w+ h& s6 m# [
            305 r5 S" X- B" a3 T
            31
& d. o' h. X: |, g) a+ W( [$ o' C            32
( P5 |7 O( g6 p; g            33
. [3 L4 \7 Z! t1 q# {  m            34+ [3 K0 F4 k- e3 l+ Y& C% l- M$ m: ]
            35; a3 K* y: M. C7 s) I
            36
9 f/ M7 g/ u4 F! L1 I; F. V            37* l( e9 W( }) R: }; h& K! e( q" L
            38( E1 V" |$ ~- B% l& p$ a
            39! r) L1 P4 g4 O( f% i
            40, n- b8 s$ T! \. P8 a
            41) i$ A( Q' `+ F+ S8 r0 c& {
            42
- \8 w7 k2 b2 D$ s" q/ ?            43) Y) [  d5 K* u; i; |" {
            
                        #coding:utf-8: D& n( O+ k' h! f
            """
5 o# B4 |& D. I3 V; }            ssh操作例子 实现了服务器日志下载6 h& B' E, U1 f) k
            2012-08-24+ S8 S9 r8 }* G: N2 M
            yywolf
( |. g# l. q# h% Z+ v& f            """9 c3 u* i  @* [0 h
            import paramiko9 z$ n* A/ u" e) o
            import time3 t& u5 x; W2 r. j+ v
            hostname="????"4 F6 X0 P* j4 y4 D1 \0 x1 u; @
            port=224 e4 i7 q- _6 P5 Q
            username="app"
/ A1 f3 T; w$ f4 E            password="????"
% Q9 L2 x3 i4 b; a            if __name__=="__main__":
1 Z4 ~* \+ m4 n; _' x! g            # paramiko.util.log.log_to_file('paramiko.log')
# @, [, W# I7 j8 O0 b            s = paramiko.sshclient()
3 q& G# ], e8 e& V& Y$ s            s.load_system_host_keys()
6 m1 F; W7 r: ]- M2 T            s.set_missing_host_key_policy(paramiko.autoaddpolicy())
$ c8 G1 P- M9 n/ R0 i            s.connect(hostname,port,username,password,timeout=4)
, P* g* C  w- P6 q. S            stdin,stdout,stderr = s.exec_command("sh  ~/log/check")
2 k7 j  c( ^- A2 ^            print stdout.read()! Z8 W" r9 r% Q7 I
            s.close()
+ `5 ?8 x8 ^) ^+ e9 n) q# ]" O5 o            #sftp
4 J6 q$ w8 O- Z2 Z7 R5 x            t = paramiko.transport((hostname,port))
2 g% {6 k8 q1 v% w0 V( L! ^/ t            t.connect(username=username,password=password)
  G" G2 C6 n, ^# y  N! G% h1 D            sftp = paramiko.sftpclient.from_transport(t)
, V' `$ R( t1 M8 ~" S% P- h            files = sftp.listdir("/home/app/log/")2 N: }+ `* W* q( W6 i
            for f in files:
. a5 _, F- B. I, L            print f' Z! O9 S$ j$ j0 z  E
            filetime = time.strftime('%y-%m-%d',time.localtime(time.time()))+ Y! e6 f9 z2 h2 P5 E
            #需要下载的文件 和下载后的文件名+ z( D% q( U" R% ~* z6 l- K
            sftp.get("/home/app/log/server.txt","c:\\users\\administrator\\desktop\\server.txt")2 n& B' _3 y* c
            sftp.get("/home/app/log/"+filetime+".log.zip","c:\users\administrator\desktop\\"+filetime+".log.zip")+ i; o0 D! s/ b1 U: s8 l1 Z" {9 \, \
            #raskey
" s1 T4 c; v$ I+ m: m3 ^0 J* J6 B            pkey_file = "e:\\yy\\tools\\key\\rsa.txt"
2 g. t- n) z9 `! r, h9 i& ?, S            key = paramiko.rsakey.from_private_key_file(pkey_file)
9 f7 |. f, f( {7 Z0 ?* O0 ~            s = paramiko.sshclient()
* p3 [. q9 G0 @5 F0 w7 o            s.load_system_host_keys()
& f$ F& ]- {; S1 V" P            s.set_missing_host_key_policy(paramiko.autoaddpolicy())
9 m3 e9 c) x8 a; N) H& @- H: G            s.connect(hostname,port,username,pkey=key)2 l2 M7 Z% V3 S, U7 N' j
            stdin, stdout, stderr = s.exec_command("ls -l  /home/app/log")
1 [6 C: r. a" |3 m            print stdout.read()
, D3 o! g" g6 d$ I            s.close()& S1 v0 `. j1 ^9 H
            raw_input()
1 o5 z# x  j* k            
7 D9 B8 B# t. y0 r4 }, [% i8 c            
  希望本文所述对大家的python程序设计有所帮助。$ p) c9 ]1 ]7 g9 s- {" X2 G' z& C
更多技术文章信息请查看: 技术文章

回复|共 12 个

Acropozelan 发表于 2015-10-10 10:58:45|浙江 | 查看全部
什么啊
effoggikeftor 发表于 2015-10-10 10:59:39|黑龙江 | 查看全部
唉!猪!你怎么了?
GoodyFouppy 发表于 2015-10-10 10:59:42|美国 | 查看全部
@,@..是什么意思呀?
bqtklouu 发表于 2015-10-10 11:00:09|冰岛 | 查看全部
这篇帖子构思新颖,题材独具匠心,段落清晰,情节诡异,跌宕起伏,主线分明,引人入胜,平淡中显示出不凡的文学功底,可谓是字字珠玑,句句经典,是我辈应当学习之典范(不好意思回错帖了
bqtklouu 发表于 2015-11-13 12:19:24|美国 | 查看全部
这是怎么了啊??
wwzcdenleclv 发表于 2015-11-13 12:19:38|美国 | 查看全部
怎么就没人拜我为偶像那??
alapScady 发表于 2015-11-13 12:20:27|墨西哥 | 查看全部
貌似我真的很笨????哎
seazvyt 发表于 2015-11-13 12:20:30|加拿大 | 查看全部
那个家 让它沉下去吧! 不要啦
GoodyFouppy 发表于 2015-11-13 12:20:36|INNA | 查看全部
出来混 迟早都是要灌的——不灌水怎么混啊
tqyjf Lv.3 发表于 2015-11-16 00:58:07|山东 | 查看全部
的确好帖子,推荐加精华/ Y. H) P7 ~7 {. L5 w0 t) o" B4 q

8 A: y6 W; `" R2 T5 @
9 y4 N5 I% `4 c! V% e6 h
) [* _6 u8 b( ^6 F) j; N4 n; t) n/ r! S# M3 \# [! N
" A2 a' y* e* Y; C! q
3 U1 Q6 N2 K' i$ X  m" {

( j+ m; e: L1 V# c, L
5 q  N4 o( \! F) z& s: z% V( L" H% w, o8 e: P9 f# D+ D  w

& H) B  }3 F( I# Z- X1 T) _0 I4 L  u- H0 P! g

  D0 x+ M% ~/ O$ e                               
登录/注册后可看大图

4 P5 z# _$ a! L0 c7 U
$ p$ I- ^1 s4 j* O( {% X% L
                               
登录/注册后可看大图
wwdu926a 发表于 2017-4-11 15:58:50|韩国 | 查看全部
求您了,给个机会
gevaemaidovef 发表于 2017-4-11 15:59:47|墨西哥 | 查看全部
要睡觉了 呵呵

回复

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

本版积分规则

得知互动是一个融创意、设计、开发、营销、生活、互联网于一体的专业交流分享平台。
Copyright © 2026 得知互动-专注Ai与站长技术交流社区-Ai交流平台 版权所有 All Rights Reserved. Powered by Discuz! X5.0 鄂ICP备15006301号-5|鄂公网安备 42018502006730号
关灯 在本版发帖 扫一扫添加QQ客服 返回顶部
快速回复 返回顶部 返回列表