返回列表 发新帖

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

636.1k 12
swmozowtfl 发表于 2015-7-10 20:45:36|湖北 | 查看全部 阅读模式
  本文实例讲述了python操作ssh实现服务器日志下载的方法。分享给大家供大家参考。具体实现方法如下:/ _1 C3 f, l3 Y' z; b
  ?
8 J' r* z  q3 o( E* E8 Q
            1; F7 i+ M- T: w$ g, L1 @0 j! p$ R1 Q# }9 F
            2
4 S0 n: Q" o  o. W2 o/ q; V+ Z            3
* `" g, [* f4 F1 Y- a1 z0 J0 W; V            4
. `+ y7 U& |$ ]: _' s9 `. l6 ~            5  @+ @. l7 ~' g) j# j3 T
            6
5 F8 M4 ~" J: ~3 _. j4 j, d& w$ V            7
1 K) I# B& f" R* O3 Z3 V- a            8
4 D; u* r8 d: q8 g3 `' {            9( q( s6 w3 _9 L9 V7 u* p" ^8 O
            10
9 ]( s1 Z, ~& H. _6 ?1 C; |  o, K            11- ?# Z$ E7 X$ s3 g( }! I, f6 b) v
            12
0 j8 e5 `# h: V1 C            13
4 _2 p( n& Y( ^) n! {            14
7 g2 m- M; f) L2 D$ S; T            15
6 q. q* n* Z2 a& I) m            16
. o. I. z4 Z% W. I            17
5 \5 K" h8 O/ Z            18
7 V! w$ Y" y) n% Y. r( j& T3 z            19) P6 d: C, P6 K  n' r
            20
% ~, w( ]* P0 p) I% @- t+ X            21
& `( N/ d( s! X2 A  y2 O/ R. u  M            22
4 F8 e9 o% z4 _: q+ ^' D0 y4 t            23
- k. @2 R* t. c            243 j( E0 V5 P# }3 r2 m
            25
3 p+ p# \! F5 H# F9 U8 g1 M  a            26, k5 ?& j; F5 E& m
            27
) Z4 p+ S/ B/ a- {0 V5 O0 {            28
7 d% ?7 s' H0 n            296 i# r% G0 y0 I% b: Z2 f4 g% `+ [, N
            30' T$ N$ y1 N7 X7 p
            31
' W2 u% `4 c0 l+ h) ]            32
# z& S" S, o$ V# ?            33
+ Y) w9 k, G, L3 ^1 T            34
) q( z1 g2 M  f% o; u0 v( W7 o            35( l$ _- U8 B+ S& L9 T
            365 ?) v+ a% q: U+ V1 Q8 J9 L
            375 U, W2 w% R, x0 d
            38# v8 F8 l3 B* X% Z7 n$ p
            39
# Q, e3 n; G0 A/ [" P  m5 P            40
1 d8 b& u) b. J            41
& p2 C9 l& z7 Y* e8 z0 f            42
, X# V: u- x- u- K            43" C. ?7 p) G# e: ]) Q
            
                        #coding:utf-8/ `1 g. Q' y- i  E
            """: R1 h2 |. d+ z, _6 ^7 K( [9 k! u6 W
            ssh操作例子 实现了服务器日志下载9 v2 x2 H* n2 w6 p
            2012-08-245 c3 _& B7 U0 \
            yywolf
  M3 a! `1 B: M2 \4 ^            """
: E" s' @  J& i7 G# \& m            import paramiko1 `7 ]3 q0 @8 B$ Q) }6 @! t* `, P
            import time
% n+ I  F8 v, l% C' m  d            hostname="????", j* m* ]5 x2 z4 o+ [& c
            port=22( z+ V) e( v8 s; h3 S& \
            username="app"
8 V! D3 ~3 ^+ V& K) x2 Z  J            password="????"
  x% _  o9 a1 ]' Y+ z            if __name__=="__main__":5 m- H# X- e, N  d) v
            # paramiko.util.log.log_to_file('paramiko.log')
6 x" I' f0 U7 U3 M3 {            s = paramiko.sshclient()# @( ?; K3 G6 `! [0 I( r' Q, }8 ^
            s.load_system_host_keys()
) V% |+ _  P. C/ B            s.set_missing_host_key_policy(paramiko.autoaddpolicy())
+ j8 V& e9 P& l; L& z8 C- ^            s.connect(hostname,port,username,password,timeout=4)# j' I: B7 M# Q" ^' f
            stdin,stdout,stderr = s.exec_command("sh  ~/log/check")
* O! g2 f  ^  j2 D# E1 x- U! i            print stdout.read()
( V% o# r# }& Y! }            s.close()
9 ^+ R# x6 F5 E            #sftp
  z% `& `! f" }8 ^) \            t = paramiko.transport((hostname,port))' J" N  @7 _+ O9 T. c: I! g; g
            t.connect(username=username,password=password)
$ T) D. H5 f8 J2 l9 E8 K            sftp = paramiko.sftpclient.from_transport(t)# X( Z9 h4 [1 z# @3 I! p  U
            files = sftp.listdir("/home/app/log/")3 ?$ w5 w! K) y2 M* O, P& {4 m
            for f in files:
+ z8 E( n, ?6 j/ l3 C8 x            print f
+ u3 g& y" b5 d# K$ S7 E            filetime = time.strftime('%y-%m-%d',time.localtime(time.time()))/ k* i* B% U" t# [3 A# y
            #需要下载的文件 和下载后的文件名6 L& \9 k4 U4 `( G  j
            sftp.get("/home/app/log/server.txt","c:\\users\\administrator\\desktop\\server.txt")
* T! `* _, d$ r            sftp.get("/home/app/log/"+filetime+".log.zip","c:\users\administrator\desktop\\"+filetime+".log.zip")" d3 Z" c- E4 e' O. s; m" s: r
            #raskey
' f0 E& s- E8 ]0 q, E            pkey_file = "e:\\yy\\tools\\key\\rsa.txt"9 s3 n' d, F$ J$ j
            key = paramiko.rsakey.from_private_key_file(pkey_file)
2 G: p' h6 T, [& a            s = paramiko.sshclient()4 Y3 ?( ~6 C7 p
            s.load_system_host_keys()
. d: Z* p$ L  j1 x5 A+ t  |: }& E            s.set_missing_host_key_policy(paramiko.autoaddpolicy())5 S, E- I, T& {3 C. X6 [  r
            s.connect(hostname,port,username,pkey=key)
0 V6 V5 y9 @0 R. v6 _% m2 j            stdin, stdout, stderr = s.exec_command("ls -l  /home/app/log")
/ K+ m# w6 O, z( \4 Y            print stdout.read()& \5 L: z, p9 X6 f; }
            s.close(). w% T7 U2 r/ h  c7 Z" a# _! |3 A
            raw_input()
6 r5 X0 O3 G8 B3 T, ]            
, R- x: I: O! M            
  希望本文所述对大家的python程序设计有所帮助。; t8 }% ?( a1 c7 U+ x  @
更多技术文章信息请查看: 技术文章

回复|共 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|山东 | 查看全部
的确好帖子,推荐加精华
, e7 L/ ?9 h# M: O4 l( E  ]& w& u
7 u& w5 n! N. p% h# a( s! R% e$ z& q" Q% _$ J* ~  P
5 h9 [9 q6 |1 _# O

( m0 k/ }5 m  n+ t9 O3 Z. i" X+ j) P! H' p( S

; C% \) u3 T' r$ @1 p$ _, q
, Q  C8 ]$ M/ I+ P. ]( t: [' P$ ^( J$ a4 |- X8 G

! m0 c7 ^! m" f7 P& x& x& {; F  E& v) R2 G9 N& v
3 p9 R! t2 D( E: e
: k0 H; d' `9 H  B/ x
                               
登录/注册后可看大图
9 \0 j' S* t9 }0 q! J7 a4 p
7 _( e* Q1 C; ^9 o5 N" {
                               
登录/注册后可看大图
wwdu926a 发表于 2017-4-11 15:58:50|韩国 | 查看全部
求您了,给个机会
gevaemaidovef 发表于 2017-4-11 15:59:47|墨西哥 | 查看全部
要睡觉了 呵呵

回复

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

本版积分规则

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