0
点赞
收藏
分享

微信扫一扫

Python 根据文件的前几位字母或者文件的后缀名称精确查找文件(windows和Linux系统通用)第二版


                                            Python 根据文件的前几位字母或者文件的后缀精确查找文件(windows和Linux系统通用)第二版

 

本程序设计思路为:根据某个文件的前面几位字母或者汉字查找符合该条件的文件并打印所有符合该规则的全部文件全路径,根据某类文件的后缀查找符合该类的所有文件,比如,某个路径下的所有txt文件,某个路径下的所有conf后缀的文件,  并将符合规则的这一类文件包括全路径打印出来。(支持window系统和Linux系统平台的文件查找,并支持汉字)

下面直接上程序源码:

import os
import sys




def find_file(path):
    for i, j, k in os.walk(path):
        for file in k:
            if file.endswith(houzhui):
                print(os.path.join(i, file))


if __name__ == "__main__":
    path = sys.argv[1]
    houzhui = sys.argv[2]

    find_file(path)

这个版本的是只有根据后缀名查找某类文件,下面是正式的第二版。

import os
import sys




def find_file_ends(path):
    for i, j, k in os.walk(path):
        for file in k:
            if file.endswith(houzhui):
                print(os.path.join(i, file))


def find_file_starts(path):
    for i, j, k in os.walk(path):
        for file in k:
            if file.startswith(qianzhui):
                print(os.path.join(i, file))

if __name__ == "__main__":
    path = sys.argv[1]
    tongpei = sys.argv[2]
    qianzhui = ""
    if tongpei.startswith("."):
        houzhui = sys.argv[2]
        find_file_ends(path)
    else:
        qianzhui = sys.argv[2]
        find_file_starts(path)

以上程序是定义了两个函数,按后缀查找时必须以  .开始,否则认为是前缀。前后缀没有字数限制,该程序写的比较粗陋,没有设计程序的复用,仅仅作为一个小程序使用而已。

该程序的执行为 python 程序名称  要查找的路径  后缀名或者前缀名

比如:查找d盘下的所有exe文件,程序名称假设为 findfile.py   ,那么,应该执行命令:

python findfile.py d://  .exe  如果是  python findfile.py d:// exe ,那么将查找 以exe开始的所有文件名,并将绝对路径打印出来,如果没有符合的,则没有输出。

Python 根据文件的前几位字母或者文件的后缀名称精确查找文件(windows和Linux系统通用)第二版_windows

在d盘 ,查找以“我的”开始的文件:

Python 根据文件的前几位字母或者文件的后缀名称精确查找文件(windows和Linux系统通用)第二版_windows_02

 

举报

相关推荐

0 条评论