python下paramiko模块学习之一:ssh登录和执行命令

    最近闲着学习python,看到有个paramiko模块,貌似很强大,学着写了个一个小程序,可以直接在window下登录到linux,执行并返回执行结果。

    下面直接贴代码:

 

  
  
  
  
  1. #!/usr/bin/env python 
  2. import paramiko 
  3.  
  4. #hostname='192.168.0.102' 
  5. hostname='172.28.102.250' 
  6. username='root' 
  7. password='abc' 
  8.  
  9. #port=22 
  10. if __name__=='__main__'
  11.         paramiko.util.log_to_file('paramiko.log'
  12.         s=paramiko.SSHClient() 
  13.         #s.load_system_host_keys() 
  14.         s.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
  15.         s.connect(hostname = hostname,username=username, password=password) 
  16.         stdin,stdout,stderr=s.exec_command('ifconfig;free;df -h'
  17.         print stdout.read() 
  18.         s.close() 

下面看下效果,呵呵:

 

  
  
  
  
  1. s\501914252.HCA-FW9CX2X\Desktop\学习资料\python paramiko-ssh.py" 
  2. eth0      Link encap:Ethernet  HWaddr 00:24:01:01:EA:5C 
  3.           inet addr:172.32.34.240  Bcast:172.32.255.255  Mask:255.255.255.0 
  4.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1 
  5.           RX packets:1428 errors:0 dropped:0 overruns:0 frame:0 
  6.           TX packets:2 errors:0 dropped:0 overruns:0 carrier:0 
  7.           collisions:0 txqueuelen:1000 
  8.           RX bytes:190928 (186.4 KiB)  TX bytes:128 (128.0 b) 
  9.           Interrupt:20 
  10.  
  11. eth1      Link encap:Ethernet  HWaddr 00:1F:29:03:54:3D 
  12.           inet addr:172.28.102.250  Bcast:172.28.255.255  Mask:255.255.0.0 
  13.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1 
  14.           RX packets:99698 errors:0 dropped:0 overruns:0 frame:0 
  15.           TX packets:12305 errors:0 dropped:0 overruns:0 carrier:0 
  16.           collisions:0 txqueuelen:0 
  17.           RX bytes:36420324 (34.7 MiB)  TX bytes:923630 (901.9 KiB) 
  18.  
  19. lo        Link encap:Local Loopback 
  20.           inet addr:127.0.0.1  Mask:255.0.0.0 
  21.           UP LOOPBACK RUNNING  MTU:16436  Metric:1 
  22.           RX packets:0 errors:0 dropped:0 overruns:0 frame:0 
  23.           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 
  24.           collisions:0 txqueuelen:0 
  25.           RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b) 
  26.  
  27. peth1     Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF 
  28.           UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1 
  29.           RX packets:99686 errors:0 dropped:0 overruns:0 frame:0 
  30.           TX packets:12333 errors:0 dropped:0 overruns:0 carrier:0 
  31.           collisions:0 txqueuelen:1000 
  32.           RX bytes:36818715 (35.1 MiB)  TX bytes:1006230 (982.6 KiB) 
  33.           Interrupt:20 Memory:f3000000-f3010000 
  34.  
  35. vif0.1    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF 
  36.           UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1 
  37.           RX packets:12305 errors:0 dropped:0 overruns:0 frame:0 
  38.           TX packets:99702 errors:0 dropped:0 overruns:0 carrier:0 
  39.           collisions:0 txqueuelen:0 
  40.           RX bytes:923630 (901.9 KiB)  TX bytes:36420811 (34.7 MiB) 
  41.  
  42. vif1.0    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF 
  43.           UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1 
  44.           RX packets:5 errors:0 dropped:0 overruns:0 frame:0 
  45.           TX packets:85175 errors:0 dropped:542 overruns:0 carrier:0 
  46.           collisions:0 txqueuelen:500 
  47.           RX bytes:140 (140.0 b)  TX bytes:20377326 (19.4 MiB) 
  48.  
  49. vif2.0    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF 
  50.           UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1 
  51.           RX packets:5 errors:0 dropped:0 overruns:0 frame:0 
  52.           TX packets:84859 errors:0 dropped:411 overruns:0 carrier:0 
  53.           collisions:0 txqueuelen:500 
  54.           RX bytes:140 (140.0 b)  TX bytes:20301953 (19.3 MiB) 
  55.  
  56. vif3.0    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF 
  57.           UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1 
  58.           RX packets:5 errors:0 dropped:0 overruns:0 frame:0 
  59.           TX packets:84337 errors:0 dropped:546 overruns:0 carrier:0 
  60.           collisions:0 txqueuelen:500 
  61.           RX bytes:140 (140.0 b)  TX bytes:20174994 (19.2 MiB) 
  62.  
  63. virbr0    Link encap:Ethernet  HWaddr 00:00:00:00:00:00 
  64.           inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0 
  65.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1 
  66.           RX packets:0 errors:0 dropped:0 overruns:0 frame:0 
  67.           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 
  68.           collisions:0 txqueuelen:0 
  69.           RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b) 
  70.  
  71. xenbr1    Link encap:Ethernet  HWaddr FE:FF:FF:FF:FF:FF 
  72.           UP BROADCAST RUNNING NOARP  MTU:1500  Metric:1 
  73.           RX packets:86405 errors:0 dropped:0 overruns:0 frame:0 
  74.           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 
  75.           collisions:0 txqueuelen:0 
  76.           RX bytes:19498121 (18.5 MiB)  TX bytes:0 (0.0 b) 
  77.  
  78.              total       used       free     shared    buffers     cached 
  79. Mem:       3359744     464724    2895020          0      31096     246296 
  80. -/+ buffers/cache:     187332    3172412 
  81. Swap:      5406712          0    5406712 
  82. Filesystem            Size  Used Avail Use% Mounted on 
  83. /dev/mapper/VolGroup00-LogVol00 
  84.                       221G   25G  185G  12% / 
  85. /dev/sda1              99M   22M   73M  23% /boot 
  86. tmpfs                 1.8G     0  1.8G   0% /dev/shm 
  87. none                  1.8G  152K  1.8G   1% /var/lib/xenstored 

    代码很简单,大家有兴趣,可以试验下,希望对您的学习和工作有帮助。

你可能感兴趣的:(python,职场,休闲,paramiko)