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实现八大排序算法(2)
Sep 14 Python
Python数据结构与算法之图的基本实现及迭代器实例详解
Dec 12 Python
python url 参数修改方法
Dec 26 Python
基于wxPython的GUI实现输入对话框(2)
Feb 27 Python
解决Django Static内容不能加载显示的问题
Jul 28 Python
简单了解Python3 bytes和str类型的区别和联系
Dec 19 Python
python GUI库图形界面开发之PyQt5访问系统剪切板QClipboard类详细使用方法与实例
Feb 27 Python
Anconda环境下Vscode安装Python的方法详解
Mar 29 Python
如何学习Python time模块
Jun 03 Python
解决keras使用cov1D函数的输入问题
Jun 29 Python
Numpy中的数组搜索中np.where方法详细介绍
Jan 08 Python
Python爬取英雄联盟MSI直播间弹幕并生成词云图
Jun 01 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中isset与array_key_exists的区别实例分析
2015/06/02 PHP
使用php+swoole对client数据实时更新(一)
2016/01/07 PHP
PHP使用redis位图bitMap 实现签到功能
2019/10/08 PHP
CL vs ForZe BO5 第五场 2.13
2021/03/10 DOTA
让iframe框架网页在任何浏览器下自动伸缩
2006/08/18 Javascript
[原创]提供复制本站内容时出现,该文章转自脚本之家等字样的js代码
2007/03/27 Javascript
jQuery中验证表单提交方式及序列化表单内容的实现
2014/01/06 Javascript
js单独获取一个checkbox看其是否被选中
2014/09/22 Javascript
原生JS实现响应式瀑布流布局
2015/04/02 Javascript
基于JQuery实现图片上传预览与删除操作
2016/05/24 Javascript
jQuery实现的自定义弹出层效果实例详解
2016/09/04 Javascript
jQuery dateRangePicker插件使用方法详解
2017/07/28 jQuery
jQuery实现购物车的总价计算和总价传值功能
2018/11/28 jQuery
vue项目搭建以及全家桶的使用详细教程(小结)
2018/12/19 Javascript
详解python的数字类型变量与其方法
2016/11/20 Python
对dataframe进行列相加,行相加的实例
2018/06/08 Python
基于MSELoss()与CrossEntropyLoss()的区别详解
2020/01/02 Python
自定义Django默认的sitemap站点地图样式
2020/03/04 Python
python 安装库几种方法之cmd,anaconda,pycharm详解
2020/04/08 Python
Django Channel实时推送与聊天的示例代码
2020/04/30 Python
html5的新玩法——语音搜索
2013/01/03 HTML / CSS
移动端HTML5实现文件上传功能【附代码】
2016/03/25 HTML / CSS
销售主管岗位职责
2014/02/08 职场文书
消防战士优秀事迹材料
2014/02/13 职场文书
模具专业毕业推荐信
2014/03/08 职场文书
研究生毕业自我鉴定范文
2014/03/27 职场文书
《草原的早晨》教学反思
2014/04/08 职场文书
室内设计专业毕业生求职信
2014/05/02 职场文书
主题实践活动总结
2014/05/08 职场文书
施工质量承诺书范文
2014/05/30 职场文书
2014购房个人委托书范本
2014/10/12 职场文书
初中生思想道德自我评价
2015/03/09 职场文书
2016年情人节广告语
2016/01/28 职场文书
总结Python使用过程中的bug
2021/06/18 Python
CSS3 Tab动画实例之背景切换动态效果
2021/08/23 HTML / CSS
Apache SeaTunnel实现 非CDC数据抽取
2022/05/20 Servers