python 远程统计文件代码分享


Posted in Python onMay 14, 2015

python 远程统计文件

#!/usr/bin/python
#encoding=utf-8
import time
import os
import paramiko
import multiprocessing

#统计文件数量
def get_total(ip,password,filepath):
  paramiko.util.log_to_file('paramiko.log')
  ssh=paramiko.SSHClient()
  ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
  try:
    starttime=time.time()
    ssh.connect(hostname=ip,port=22,username='root',password=password)
    #stdin,stdout,stderr = ssh.exec_command(str(len(os.listdir(filepath))))
    stdin,stdout,stderr = ssh.exec_command('cd filepath ;ls |wc -l')
    #print ip,filepath,stdout.read().strip('\n')
    count=int(stdout.read().strip('\n'))
    endtime=time.time()
    caltime=endtime-starttime
    result=ip+','+filepath.strip('\n')+','+str(count)+','+str(caltime)+'\n'
    return result
  except:
    result=ip+','+filepath.strip('\n')+','+'failed'+'\n'
    return result
#读取ip、密码,ip.csv每一行为192.168.1.1,111111,/var 第一列是ip地址,第二例是密码,第三列是路径
iplist=open('ip.csv').readlines()
#存入统计结果
ipresultlist=['IP,FILEPATH,COUNT,TIMECOST\n']
#多进程统计
pool=multiprocessing.Pool(processes=6)
#循环每一行进行统计
for ip in iplist:
  ipin=ip.split(',')
  pool.apply_async(ipresultlist.append(get_total(ipin[0],ipin[1],ipin[2])))
pool.close()
pool.join()
#写入文件
fp=open('tongji_log'+'_'+time.strftime('%Y%m%d%H%M%S',time.localtime())+'.csv','a+')
fp.writelines(ipresultlist)
fp.close()

以上所述就是本文的全部内容了,希望大家能够喜欢。

Python 相关文章推荐
Python的高级Git库 Gittle
Sep 22 Python
Python中的自定义函数学习笔记
Sep 23 Python
Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
Nov 18 Python
使用Python下载歌词并嵌入歌曲文件中的实现代码
Nov 13 Python
详解python函数传参是传值还是传引用
Jan 16 Python
python线程信号量semaphore使用解析
Nov 30 Python
Django中的session用法详解
Mar 09 Python
Python网页解析器使用实例详解
May 30 Python
python+selenium 简易地疫情信息自动打卡签到功能的实现代码
Aug 22 Python
浅谈anaconda python 版本对应关系
Oct 07 Python
Python数据模型与Python对象模型的相关总结
Jan 26 Python
python 高阶函数简单介绍
Feb 19 Python
详解Python中for循环的使用方法
May 14 #Python
python编写爬虫小程序
May 14 #Python
讲解Python中if语句的嵌套用法
May 14 #Python
详解Python中的条件判断语句
May 14 #Python
Python3通过Luhn算法快速验证信用卡卡号的方法
May 14 #Python
Python入门教程之if语句的用法
May 14 #Python
Python随机生成信用卡卡号的实现方法
May 14 #Python
You might like
利用PHP制作简单的内容采集器的代码
2007/11/28 PHP
浏览器预览PHP文件时顶部出现空白影响布局分析原因及解决办法
2013/01/11 PHP
PHP设计模式之模板方法模式定义与用法详解
2018/04/02 PHP
js中使用replace方法完成某个字符的转换
2014/08/20 Javascript
通过JS判断联网类型和连接状态的实现代码
2015/04/01 Javascript
JavaScript为事件句柄绑定监听函数实例详解
2015/12/15 Javascript
Javascript 5种方法实现过滤删除前后所有空格
2016/06/22 Javascript
require.js 加载 vue组件 r.js 合并压缩的实例
2016/10/14 Javascript
详解自动生成博客目录案例
2016/12/09 Javascript
基于bootstrap的选择框插件icheck
2016/12/23 Javascript
基于jQuery实现火焰灯效果导航菜单
2017/01/04 Javascript
jQuery实现用户信息表格的添加和删除功能
2017/09/12 jQuery
VUE项目中加载已保存的笔记实例方法
2019/09/14 Javascript
Vue filter 过滤器、以及在table中的使用介绍
2020/09/07 Javascript
如何在Vue项目中添加接口监听遮罩
2021/01/25 Vue.js
[49:56]VG vs Optic 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
Python中itertools模块用法详解
2014/09/25 Python
python函数形参用法实例分析
2015/08/04 Python
在Python程序和Flask框架中使用SQLAlchemy的教程
2016/06/06 Python
Django ImageFiled上传照片并显示的方法
2019/07/28 Python
python3 requests库文件上传与下载实现详解
2019/08/22 Python
Pycharm 字体大小调整设置的方法实现
2019/09/27 Python
python 决策树算法的实现
2020/10/09 Python
CSS3字体效果的设置方法小结
2016/06/13 HTML / CSS
Perry Ellis官网:美国男士品味服装
2016/12/09 全球购物
Priority Pass机场贵宾室会籍计划:全球超过1200间机场贵宾室
2018/08/26 全球购物
中专毕业生求职简历的自我评价
2013/10/21 职场文书
酒店工作职员求职简历的自我评价
2013/10/23 职场文书
给物业的表扬信
2014/01/21 职场文书
2014年教师节寄语
2014/08/11 职场文书
村主任群众路线个人对照检查材料
2014/09/26 职场文书
公务员处分决定书
2015/06/25 职场文书
2016最新离婚协议书范本及程序
2016/03/18 职场文书
详解MySQL 联合查询优化机制
2021/05/10 MySQL
Python调用腾讯API实现人脸身份证比对功能
2022/04/04 Python
Moment的feature导致线上bug解决分析
2022/09/23 Javascript