python查找指定格式文件并复制到指定目录

1、需求:

     在linux 系统下,会对一些应用代码进行编译,生成".a"、".so"一类的文件到不同的目录和文件夹下,最后在调用时需要把他们放一个目录中,如果手动用指令实现非常不方便,现通过python来已经快速实现。

小记

.a文件,是LINUX系统中的静态链接库文件。

.so文件,  是LINUX系统中的动态链接库,名字形式多为 “libxxx.so” 后缀名为 “.so”

2、实现:

    以下是通过 查找某个文件夹下".h"文件的例子,找到后加入到list中,再通过【复制】或【剪切】函数到指定目录,代码如下:

import os, shutil

file_list = []

# 搜索函数--可搜索指定目录上的文件夹下的文件。
def search_file(root, target):
    for file in os.listdir(root):
        path = root
        try:
            path = path + os.sep + file
            if os.path.isdir(path):
                search_file(path, target)
            else:
                if file.split('.')[-1] == target:
                    file_list.append(path)
        except PermissionError as e:
            print(e)
    return file_list


# 批量移动函数
def move_file(file_list, dest):
    for file in file_list:
        try:
            shutil.move(file, dest)
        except shutil.Error as e:
            print(e)

# 批量复制函数
def move_file(file_list, dest):
    for file in file_list:
        try:
            shutil.opy(file, dest)
        except shutil.Error as e:
            print(e)

# 写入目标参数root,
def main():
    # ---- windows
    # root = "D:\\pic1"
    # target = "png"
    # dest_dir = "D:\\ABC\\pic2"

    # -- linux --
    root = "/home/dsoftbus/cpp/pycopy"
    target = "h"
    dest_dir = "/home/dsoftbus/copy_file_h"
    result = search_file(root, target)
    print(result)
    # 剪切文件
    # move_file(result, dest_dir)
    
    # 复制文件
    copy_file(result,dest_dir)
    print("复制成功!!")


if __name__ == '__main__':
    main()

3、参考:

PYTHON复制

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值