在指定的盘符,搜索出给定后缀名的文件

# -*- coding: cp936 -*-
#python 27
#xiaodeng
#http://www.cnblogs.com/hongten/p/hongten_python_file_info.html
#在指定的盘符,搜索出给定后缀名的文件

#本脚本知识点:
#os.listdir():返回指定目录下的所有文件和目录名(文件夹)
#os.path.getsize(name):获得文件大小,如果name是目录返回OL
#os.path.join(path,name):连接目录与文件名或目录
#os.walk(DESK),返回结果,三个参数 1.父目录,文件的目录;2.所有文件夹名字(不含路径);3.所有文件名字

import os
import time
now =  str(time.strftime(‘%Y-%m-%d %H:%M:%S‘,time.localtime(time.time())))#当前时间

#####################《需要修改的参数》#################################
#指定盘符
DESK=r‘C:\python‘#如路径包含中文,r不能丢~~

#信息保存文件的路径
SAVE_FILE = ‘C:\Users\Administrator\Desktop\新浪API\info.log‘

#需要查找的文件后缀类型
FILE_TYPE = [‘py‘,‘txt‘]

#####################《全局变量定义》#################################
#文件计数
FILE_COUNT=0
#目录计数
DIR_COUNT=0
#文件名(含绝对路径)总计
ABS_FILES=[]
#符合要求的文件总数
YES_FILES_COUNT=[]
#不符合要求的文件总数
NO_FILES_COUNT=[]

#主程序开始
#os.walk(DESK)返回结果,三个参数(具备递归功能)。1.父目录,文件的目录;2.所有文件夹名字(不含路径);3.所有文件名字
for parent,dirnames,filenames in os.walk(DESK):
    #计算总共的文件夹个数
    DIR_COUNT=DIR_COUNT+len(dirnames)

    #计算总共的文件个数
    FILE_COUNT=FILE_COUNT+len(filenames)

    #提取符合要求的文件数据
    for file in filenames:
        for key in FILE_TYPE:#遍历需要查询的特定后缀的文件,如:txt
            if key in file:
                YES_FILES_COUNT.append(key)#符合要求的文件总数
                filepath=os.path.join(parent,file)#文件绝对路径
                size=os.path.getsize(filepath)#获取文件大小
                string=‘%s\t%s\t%s‘%(now,filepath,size)
                ABS_FILES.append(string)

#完成写入和打印操作
if __name__==‘__main__‘:
    #写入文件
    info=open(‘info.log‘,‘w+‘)
    for files in ABS_FILES:
        info.write(files+‘\n‘)
    info.close()
    print ‘查询结果:‘
    print ‘##‘*20
    print ‘总文件夹数量:‘,DIR_COUNT,‘总文件数量:‘,FILE_COUNT
    #print ‘文件名汇总:‘,FILES

    NO_FILES_COUNT=FILE_COUNT-len(YES_FILES_COUNT)
    print ‘符合要求的文件总数:‘,len(YES_FILES_COUNT),‘不符合要求的文件总数:‘,NO_FILES_COUNT

‘‘‘
查询结果:
########################################
总文件夹数量: 4 总文件数量: 7
符合要求的文件总数: 3 不符合要求的文件总数: 4
‘‘‘
时间: 2024-10-23 01:58:05

在指定的盘符,搜索出给定后缀名的文件的相关文章

Android-取出SDcard卡下指定后缀名的文件

Android--取出SDcard卡上指定后缀名的文件 1. import java.io.File; import java.io.FilenameFilter; /** * 后缀名过滤器 * @author ZLQ * */ public class FileNameSelector implements FilenameFilter{ String extension = "."; public FileNameSelector(String fileExtensionNoDot

Java:搜索特定后缀名的文件

写了个Java程序,以特定后缀名为条件,在指定目录内递归搜索文件,再生成文件列表. 1 import java.io.File; 2 import java.util.ArrayList; 3 import java.util.List; 4  5 public class FileListGenerator { 6  7     // FileList类可寻找指定路径下所有指定文件后缀名的文件,并生成文件列表 - List<File> 8  9     FileListGenerator(F

java批量修改指定文件夹下所有后缀名的文件为另外后缀名的代码

原文:java批量修改指定文件夹下所有后缀名的文件为另外后缀名的代码 源代码下载地址:http://www.zuidaima.com/share/1550463660264448.htm 今天有个需求,想把某个文件夹下所有后缀名为jsp的更改为ftl,本来想用bat实现对bat的高级语法也不太了解,后来发现还需要递归遍历所有的子文件夹,所以用java实现了一个功能一样的代码,有需要的牛人可以下载修改为自己想要的. 这样可以兼容windows和linux. package com.zuidaima

判断一个文件是否是指定后缀名的文件

package com.toogen.log4j; import java.io.File; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; public class FileTest { private static Log log = LogFactory.getLog(FileTest.class); /** * 测试 * @param args */ public s

windows server 2008 R2 域中用组策略隐藏指定磁盘驱动器(盘符)

1.首先在C:\Windows\SYSVOL\sysvol\xxx.com\Policies文件夹下,创建文件夹PolicyDefinitions. 2.将%systemroot%\PolicyDefinitions\下所有文件复制到C:\Windows\SYSVOL\sysvol\xxx.com\Policies\PolicyDefinitions下. 3.修改C:\Windows\SYSVOL\sysvol\xxx.com\Policies\PolicyDefinitions\Windows

Java基础知识强化之IO流笔记10:File类输出指定目录下指定后缀名的文件名称案例

1. 案例: 判断F盘下是否有后缀名为.jpg的文件,如果有的话,就输出这个文件名. 2. 案例代码如下: (1)思路是:先获取所有的文件和文件夹封装的对象,然后遍历的时候,依次判断,如果满足条件就输出. 1 package com.himi.filesdemo; 2 3 import java.io.File; 4 5 6 /** 7 * 判断F盘下是否有后缀名为.jpg的文件,如果有的话,就输出这个文件名 8 * @author hebao 9 * 10 */ 11 public class

File类中根据指定后缀名查找所有以该后缀名的文件或者目录

import java.io.File; public class FileSuffixDemo { public static void main(String[] args) { demo(new File(""),"txt"); //传txt后缀名到demo方法中 } public static void demo(File f,String suffix){ //suffix为后缀名 String[] list = f.list(); //用list()方法

JavaSE8基础 File FilenameFilter 筛选出指定后缀名的文件

os :windows7 x64    jdk:jdk-8u131-windows-x64    ide:Eclipse Oxygen Release (4.7.0) code: package jizuiku0; import java.io.File; import java.io.FilenameFilter; /* * @version V17.09 */ public class Filter { public static void main(String[] args) { //

python 过滤出某后缀名文件

以从某文件夹过滤出py文件为例: 法1: import glob import os os.chdir(“./”) for file in glob.glob(“*.py”): print file 法2: for file in os.listdir(“./”): if file.endswith(“.py”): print file 法3: for root, dirs, files in os.walk(“./”): for file in files: if file.endswith(