文件分割,用于将一个文件产生k份文档(仿linux的split,考虑遇到空行再分开)
2012-03-28 16:13
721 查看
#!/usr/bin/python import sys,os,commands if __name__=='__main__': if len(sys.argv)==4 and sys.argv[1]=='help': print 'usage:*.py file2seg num_file des_folder' else: #get total line of the train/test file shellcmd='wc -l '+sys.argv[1] line_no=commands.getstatusoutput(shellcmd) line_no=line_no[1][0:line_no[1].index(' ')] f=open(sys.argv[1],'r') #calculate the num per file(just about) per_file_line=int(line_no)/int(sys.argv[2]) print line_no print 'per_file_line about:',per_file_line current_line_no=0 file_suffix=0 f_new=open(sys.argv[3]+str(file_suffix)+".txt",'w') for line in f: current_line_no=current_line_no+1 new_file_suffix=current_line_no/per_file_line if new_file_suffix <> file_suffix:#new file part #meet the blank line,good split if len(line.strip())==0: f_new.close() f_new=open(sys.argv[3]+str(new_file_suffix)+".txt",'w') file_suffix=new_file_suffix #else: # while True:#forward till we find a new blank line # print line f_new.write(line) f_new.flush() f_new.close()
相关文章推荐
- csplit命令_Linux csplit 命令用法详解:将一个大文件分割成小的碎片文件
- linux大文件分割 split命令
- Linux下的split 命令(将一个大文件根据行数平均分成若干个小文件)
- Linux下文件分割与合并:split & cat
- Linux修改文件时候出现崩溃,产生了一个.swap交换文件,如何修复?
- linux大文件分割 split命令
- [Unix/Linux] catsrc.sh: 此脚本用于在写报告时把项目的多个源代码文件方便的 `cat` 到一个文件上, 并把来自不同的文件之间加上一个标识头以区分输出文件里的不同文件
- linux下使用split 来分割大文件
- Linux下的split 命令——将一个大文件根据行数平均分成若干个小文件
- Linux下安装pyinstaller用于将py文件打包生成一个可执行文件
- Linux 大文件分割split与合并cat使用方法
- Linux下的split 命令(将一个大文件根据行数平均分成若干个小文件)
- Linux系统下使用split命令分割大文件
- linux 下用split/cat 来分割合并文件
- Linux文件分割与合并:split & cat
- Linux - 文件的分割(split)与合并(cat)
- 用javadoc提取此注释文档,并产生一个HTML文件,最后通过浏览器查看结果 直接Tools>Generate javadoc
- linux下使用split 来分割大文件
- linux 多个源文件在编译时会产生一个目标文件