利用python copy目录下所有特定后缀的文件

python 太好用了

这一次我想将子目录先所有jpg和pdf文件都copy出来放到一个文件夹,在网上找了个copy全部文件的代码修改一下就搞定了

import os
import shutil

source_path = os.path.abspath(r‘F:\tool\‘)
target_path = os.path.abspath(r‘D:\putout‘)

if not os.path.exists(target_path):
    os.makedirs(target_path)

if os.path.exists(source_path):
    # root 所指的是当前正在遍历的这个文件夹的本身的地址
    # dirs 是一个 list,内容是该文件夹中所有的目录的名字(不包括子目录)
    # files 同样是 list, 内容是该文件夹中所有的文件(不包括子目录)
    for root, dirs, files in os.walk(source_path):
        for file in files:
            if file.find(‘jpg‘) > -1 or  file.find(‘jpeg‘) > -1 or  file.find(‘pdf‘) > -1:
                src_file = os.path.join(root, file)
                shutil.copy(src_file, target_path)
                print(src_file)

print(‘copy files finished!‘)

参考代码 https://www.cnblogs.com/dazhan/p/9834979.html

不过做文件类型判断不严谨,应该用filetype

(前不久还说不发随笔了,打脸)

原文地址:https://www.cnblogs.com/simonlin/p/10726030.html

时间: 2024-10-11 07:05:29

利用python copy目录下所有特定后缀的文件的相关文章

删除指定目录下的指定后缀的文件

1 import java.io.*; 2 import javax.swing.*; 3 public class Delete{ 4 public static void main(String[] args)throws Exception{ 5 String target = JOptionPane.showInputDialog(null,"请输入您要清理垃圾的目录:"); 6 File[] fs = new File(target).listFiles(new Filena

Linux下环境变量设置技巧,不用/etc/profile而是在/etc/profile.d目录下新建特定的shell文件来设置

区别: 1.两个文件都是设置环境变量文件的,/etc/profile是永久性的环境变量,是全局变量,/etc/profile.d/设置所有用户生效,同样是永久变量,是全局变量. 2./etc/profile.d/比/etc/profile好维护,不想要什么变量直接删除/etc/profile.d/下对应的shell脚本即可,不用像/etc/profile需要改动此文件. 3.需要注意的是,/etc/profile和/etc/profile.d同样是登录(login)级别的变量,当用户重新登录sh

Python正则匹配递归获得给出目录下的特定类型的文件小技巧

需求是酱的: 输入一个目录,这个目录包含检测目录的必备信息但不准确需要获得后加工一下,如给出目录:C:\Program Files\Common Files\DESIGNER,需要检测的目录是:C:\Program Files\Common Files\System,即从给出的目录中获取前面的信息,后面的补上的目录(System)是指定的.从E:\res\tmp目录中检测xml文件,返回xml文件的目录 代码如下: 1 import os 2 import re 3 pathlist = []

查询目录下包含特定字符的文件

sudo find /home/q/www/*/conf/server.xml|xargs sudo grep -ri "7777" –l 参考: http://man.linuxde.net/

python 之遍历目录树(可匹配输出特定后缀的文件)

涉及到的模块有os, fnmatch:1.通过os模块中的方法获取dir.subdir.files,通过os.path.join可拼接成完整路径: 2.fnmatch主要通过fnmatch.fnmatch(name, patterns),在patterns中匹配name元素,用于获取特定后缀的文件. 可将这一功能代码封装,以便后续调用: 1 #!/usr/bin/env python 2 import os, fnmatch 3 4 def all_files(root, patterns='*

Linux Shell编程实战---计算特定目录下前10个大文件

计算特定目录下前10个大文件 在给定的目录下,想知道有哪些大文件存在,取前十个,按文件大小排行 (1).使用awk来实现 #!/bin/bash path=/root/shell find $path-type f | awk '{ var=$0 "ls -l "var |getline var1 split(var1,a," ") filename=a[9] filesize=a[5] printf("%s %s\n",filename,fil

[原创]Windows下更改特定后缀名以及特定URL前缀的默认打开程序

Windows下,特定后缀名的文件会由特定的应用程序来运行,比如双击readme.txt,通常情况下会由Windows自带的notepad.exe(记事本)打开文件.如果现在安装了记事本以外的其他文本阅读器比如Vim或者UltraEdit,并且我想以后每次双击这个readme.txt文件时都由Vim来阅读,可以参考本文档中的步骤. 同样的,在Windows下,特定前缀的URL也会由不同的应用程序来打开,比如在我的计算机上,以mailto:开头的URL会启动Outlook,并根据URL中的其他信息

python 查看目录下所有目录和文件

python查看目录下所有的子目录和子文件 python递归便利目录结构 方法1 import json, os def list_dir(path, res): for i in os.listdir(path): temp_dir = os.path.join(path, i) if os.path.isdir(temp_dir): temp = {"dirname": temp_dir, 'child_dirs': [], 'files': []} res['child_dirs

java 20 -3 递归之删除特定目录下的特定文件

1 /* 2 需求:删除H:\demo目录下的带内容的文件 3 分析: 4 A:封装该目录 5 B:获取该目录下所有的文件或文件夹的File数组 6 C:遍历该File数组,获取每一个File对象 7 D:判断所遍历的FIle对象 8 是否是文件夹 9 是:返回步骤B 10 不是:判断里面是否有内容 11 有:删除 12 不是:不理 13 B-D设为递归方法: 14 返回类型;void 15 参数列表:File xxx 16 出口:文件里面有内容 17 */ 18 package zl_DiGu