`
dacoolbaby
  • 浏览: 1266093 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

一个简单的文件合并脚本

阅读更多

有时候通过MR跑数会生成N个小文件。

手工合并实在太讨嫌,所以就写了个Python自动合并脚本。

 

import os
import os.path
import sys

if len(sys.argv)<2:
	print 'merge file script must have enough parameters!'
	sys.exit()


rootdir = sys.argv[1]

#rootdir = r'D:\testing'                                   # 指明被遍历的文件夹

rootdir = rootdir.replace('\\','/')

if rootdir[len(rootdir)-1] == '/':
	rootdir = rootdir[0:len(rootdir)-1]
	
file_output = open( rootdir + '/' + 'merge.txt', 'w')

for parent,dirnames,filenames in os.walk(rootdir):    #三个参数:分别返回1.父目录 2.所有文件夹名字(不含路径) 3.所有文件名字	
	
	'''for dirname in dirnames:      #输出文件夹信息                 
		print "parent is:" + parent
		print  "dirname is" + dirname
	'''
	
	for filename in filenames:   #输出文件信息  
				
		if filename == 'merge.txt':    #获取文件不等于输出文件自己
			continue
		if filename.startswith('.'):  #过滤隐藏文件
			continue 
			
		print "filename :" +filename    #记录遍历的文件
		
		fi = open(rootdir + '/' + filename,'r')
		while True:
			s = fi.read(16*1024)
			#if not s:
			if s is None or s == "":
				break
			file_output.write(s)
		file_output.write('\n')
		
file_output.close()

  

快速文件拷贝参考高手的实现方式,http://bbs.csdn.net/topics/390440169

文件读取,按16k缓存进行。

 

最后输出一个文件。

 

使用方式:

python merger.py d:\testing

 

在d盘下的testing文件夹中将所有的文件,文件夹不会遍历,进行合并。

 

 

分享到:
评论

相关推荐

    SQL脚本文件合并工具

    通过“SQL脚本文件合并工具”,我们可以将分散的SQL脚本整合到一起,形成一个大的SQL脚本文件,这样在SQL*Plus中只需要运行一次,就能完成所有脚本的执行,避免了反复打开、执行单个文件的繁琐步骤。 合并过程可能...

    文件合并脚本 python

    文件合并脚本 python 文件合并脚本 python

    缓存视频文件合并脚本.rar

    标题“缓存视频文件合并脚本.rar”涉及的是一个用于整合多个分段视频文件的脚本工具。在处理大型视频文件时,为了便于传输或存储,通常会将视频分割成多个小片段。这个压缩包提供的就是一个帮助用户将这些分段的视频...

    SQL脚本文件合并工具.exe

    利于将多个分散的sal脚本合并为一个sql文件。

    可实现hex文件三种方式的合并1,简单复制合并2,删除最后一行hex文件后合并3同时实现前两种形式同时合并

    例如,你可能希望保留第一个文件的完整内容,同时将第二个文件中的新数据添加到第一个文件的空白区域。这需要解析每个Hex文件的地址和数据,找出空缺位置,并将第二个文件的数据插入适当的位置,确保不覆盖已有数据...

    SQL脚本文件合并工具.zip

    标题中的"SQL脚本文件合并工具.zip"表明这是一个压缩文件,里面包含了一个名为"SQL脚本文件合并工具.exe"的应用程序。这个.exe文件是Windows操作系统下的可执行文件,用户可以通过双击运行它来执行SQL脚本的合并任务...

    boot.bin和app.bin的自动合并脚本,附demo merge_test.rar

    这个脚本不仅能够将两个二进制文件合并,还能够追加版本号,这对于管理和追踪固件版本至关重要。 批处理脚本是一种基于DOS命令行环境的简单编程方式,用于自动化执行一系列命令。在这个场景下,它可能包含了`copy`...

    两个bin文件合并成1个bin文件UBIN.zip

    在某些应用场景下,例如嵌入式系统开发或者固件更新,可能需要将多个BIN文件合并成一个单一的文件,以方便管理和传输。在本例中,"两个bin文件合并成1个bin文件UBIN.zip"的描述,正是指的这样一个过程。 要理解这个...

    Hex固件合并,2个hex文件合并成一个hex文件。里面有我写的操作说明。这个处理脚本是我的原创。

    1、如果想合并多个文件可以参考merge文件夹下的merge.bat脚本编写。 2、hex2bin.exe的使用方法是:拖拽hex文件到其上面释放,自动在当前目录下生成同名bin文件(或者用批处理加参数即可)。

    使用python将多个excel文件合并到同一个文件的方法

    应用场景:使用pandas把多个相同结构的Excel文件合并为一个。 原始数据:   相关代码: import os import pandas as pd # 将文件读取出来放一个列表里面 pwd = 'test' # 获取文件目录 # 新建列表,存放文件名 ...

    BAT批处理脚本-将所在目录的BAT文件合并成一个BAT文件,通过 选择 运行其中之一.zip

    本压缩包中的资源,名为"将所在目录的BAT文件合并成一个BAT文件,通过选择运行其中之一.bat",正是这样一个批处理脚本,它的目的是将当前目录下的所有BAT文件整合到一个单一的批处理文件中,用户可以通过这个新生成...

    多个文件合并成一个大文件

    在IT领域,经常需要处理大量的文件,有时候为了方便管理和传输,我们可能会选择将多个文件合并成一个大文件。这个过程可以使用多种工具和技术来实现,适用于各种操作系统,如Windows、Mac OS或Linux。下面我们将详细...

    将多个文本文件内容合并成一个的脚本文件

    将多个文本文件内容合并成一个的vbs脚本,指定两个路径名称即可直接使用

    HEX合并软件+可用于两个HXE文件的合并

    HEX文件合并可能涉及到以下几个关键知识点: 1. **十六进制编辑器**:这种软件允许用户查看、编辑和操作以十六进制格式表示的数据。它们通常比普通的文本编辑器更强大,因为它们能够处理非ASCII字符和二进制数据。 ...

    B站视频合并脚本.rar

    【标题】"B站视频合并脚本.rar"指的是一个压缩包文件,其中包含了一个用于合并B站(哔哩哔哩)APK应用缓存的视频的脚本。B站作为一个流行的二次元文化与视频分享平台,其视频内容可以通过APK应用缓存到本地设备上,...

    csv合并工具,csv合并器,csv文件合并工具

    CSV文件批量合并工具(批量合并多个CSV文件)是一款简洁好用,绿色小巧的CSV文件合并工具。CSV文件批量合并工具非常的使用,让你能够更轻松快捷的进行CSV文件合并工作,非常方便。可以同时批量合并多个CSV文本文件,...

    qvod缓存文件合并脚本

    mv文件合并工具 手机快播视频合并 合并程序包括如下三个文件 rename.vbs 核心合并程序,可以单独使用 copy_ren.vbs 将rename.vbs逐个放入电影目录内 do_ren.vbs 逐个进入电影目录内运行rename.vbs 使用方法: 1、...

    合并多个sql文件

    标题“合并多个sql文件”所指的就是这样一个任务,即把分散的SQL脚本整合到一起,形成一个综合的SQL文件。 描述中提到的工具支持“utf-8”格式,这意味着它能够处理包含多种语言或特殊字符的数据库内容。UTF-8是一...

    二进制bin文件合并工具

    当我们面临需要将两个或多个BIN文件合并成一个单一文件的场景时,"二进制bin文件合并工具"就显得尤为重要。 标题所提到的"二进制bin文件合并工具"是一种专门用于处理这种情况的应用程序,它能够将两个独立的BIN文件...

    csv文件合并.bat

    将多个CSV文件合并成一个文件 CSV全称Comma-Separated Values,它是一种通用的,简单的,被广泛采用的一种表格数据格式。采用纯文本格式存储,用分隔符号分开。它格式类似于数据库表格,每一行,中间用分隔符分开,...

Global site tag (gtag.js) - Google Analytics