可以用c去解决

#include

#include

#include

#include

#include

#define SUCCESS 1

#define READ_BUFF 8192

int main(int argc,char** argv)

{

printf("--- file combine Programme ---n");

if(NULL==argv[2])

{

printf("Input param error! exit...nPls use ./main data_folder outputCombinedFileNamen");

exit(0);

}

char *filePrefix = new char[256];

char *fileListBuf = new char[READ_BUFF];

DIR *dirp;

struct dirent* dp;

char *str = new char[256];

long fileSize = 0L;

int nread = 0;

if((dirp=opendir(argv[1])) == NULL ) return -1;

else

{

while((dp = readdir(dirp))!= NULL)

{

FILE *fd;

FILE *outFile;

if(strcmp(dp-> d_name,".")==0||strcmp(dp->d_name,"..")==0)continue;

sprintf(str,"%s/%s",argv[1],dp->d_name);

if((fd=fopen(str,"r"))!=NULL)

{

printf("Combining %s now ...n",str);

fseek(fd,0,SEEK_END);

fileSize = ftell(fd);

rewind(fd);

outFile = fopen(argv[2],"a+");

if(NULL == outFile)

{

printf("open output file error!n");

}

while((nread=fread(fileListBuf,sizeof(char),READ_BUFF,fd))>0)

{

fwrite(fileListBuf,sizeof(char),nread,outFile);

}

fclose(fd);

fclose(outFile);

}

}

}

closedir(dirp);

delete[] filePrefix;

delete[] fileListBuf;

delete[] str;

return SUCCESS;

}

linux 快速合并文本文件,Linux-Linux中高效合并文本文件的方法相关推荐

  1. linux svn忽略添加,Ubuntu svn 中添加忽略文件的方法

    下面为大家简单明了的讲解下Ubuntu svn 中添加忽略文件的方法,使用过 Git 忽略文件的人可能初次接触 svn 的忽略文件的方式不是很习惯,在 git 中,只要添加 .gitignore 文件 ...

  2. linux mysql 乱码怎么解决_MySQL_linux中解决mysql中文乱码方法,改默认编码:/etc/init.d/my - phpStudy...

    linux中解决mysql中文乱码方法 改默认编码: /etc/init.d/mysql start (stop) 为启动和停止服务器 /etc/mysql/ 主要配置文件所在位置 my.cnf /v ...

  3. linux 软键盘输入密码,Linux_Linux系统中使用屏幕键盘的方法,屏幕键盘可以作为实体键盘输 - phpStudy...

    Linux系统中使用屏幕键盘的方法 屏幕键盘可以作为实体键盘输入的替代方案.在某些时候,屏幕键盘显得非常需要. 比如, 你的键盘刚好坏了:你的机器太多,没有足够的键盘:你的机器没有多余的接口来连接键盘 ...

  4. python如何输入多行数据合并_关于Python中的合并字典,这些问题必须搞清楚!

    全文共1474字,预计学习时长6分钟 图源:unsplash Python 3.9现在处于初始开发阶段,但其中让人惊喜的新功能可不少.其中一个是颠覆性的,它能使处理Python字典时编写的代码更具可读 ...

  5. linux 快速建文件目录,在Linux中批量创建和修改文件或目录

    1. 用一条命令直接创建[fred@Royalmile Auto_Ops]$ touch `seq 10` [fred@Royalmile Auto_Ops]$ ls 1  10  2  3  4   ...

  6. linux 快速启动程序,在Linux上安装ULauncher快速启动应用程序的方法

    本文介绍在Linux操作系统上安装ULaunche的方法,Ulauncher是一款应用程序启动器,安装后可以非常轻松地查找和启动文件.快速打开网站.查找要打开的程序.计算数学问题等等,参考Linux应 ...

  7. 移动硬盘里的linux系统文件夹加密,在Deepin系统中加密移动存储设备的方法

    本文介绍简单可行的方法让你在Deepin系统中加密你的移动存储设备,包括U盘及移动硬盘.同时要指出的是虽然可以采用下面方法保护数据不让他人随意观看,但是不能阻止他人破坏数据,例如,格式化U盘或移动硬盘 ...

  8. linux快速删除大量目录,Linux 快速删除大量小文件方法

    当我们在linux系统中要删除数万或者数十万甚至数百万的文件时使用rm -rf *就不太好用,因为要等待很长一段时间.在这种情况之下我们可以使用linux系统命令rsync来巧妙的处理.rsync实际 ...

  9. linux快速统计目录大小,linux下统计文件夹、文件的大小--du

    Linux下统计文件夹大小 du -sh ./ 统计文件夹占用的空间 find ./ -type f xargs ls -l awk 'BEGIN { size=0;}{size+=$5};END{p ...

  10. linux 脚本 获取pid,Shell脚本中获取进程ID的方法

    提问: 我想要知道运行中脚本子shell的进程id.我该如何在shell脚本中得到PID. 当我在执行shell脚本时,它会启动一个叫子shell的进程.作为主shell的子进程,子shell将she ...

最新文章

  1. MindSpore循环神经网络
  2. 华为云AIOps实践全面解析
  3. 解决vscode格式化vue文件出现的问题
  4. 漫谈中国自主杀毒引擎
  5. 串口初始化结构体和固件库讲解
  6. 以太坊钱包1-Android-创建钱包
  7. BZOJ2212——线段树合并
  8. 操作系统【逻辑空间、物理空间与页表大小的关系】【分页地址映射(方法+例题)】
  9. matlab graphic,Matlab图形系统,Matlab Graphic System,音标,读音,翻译,英文例句,英语词典...
  10. 第二篇: 在虚拟主机上使用ASP.NET Ajax
  11. 深度学习“三巨头”、图灵奖得主 Yann LeCun:我没有天赋,所以才追随聪明人...
  12. mysql创建表shop_ShopXO商城-支付方式 - 数据库设计 - 数据库表结构 - 果创云
  13. iis php日志查看工具,教你如何查看IIS日志
  14. 初用WEB IOU,IE LAB备战启航
  15. 拓端tecdat|R语言markov switching model马尔可夫转换模型研究商业周期
  16. 华南理工大学控制工程考研经验分享
  17. Python 文件路径
  18. 利用FolderSync实现本地FTP备份同步
  19. MAC OS搭建pyhton+selenium+pycharm实现web自动化测试
  20. 我在CSDN参与的3000个帖子

热门文章

  1. selenium借助AutoIt识别上传文件Java篇
  2. PHP - 如何解析HTML文件
  3. 解决在IE浏览器中JQuery.resize()执行多次的方法(转)
  4. Ex2010学习(十),恢复用户已删除邮件
  5. DNS服务器配置图解过程(1)
  6. QT、C++面试中的几个问题
  7. 【算法】排序_汇总篇
  8. 【SpringBoot_ANNOTATIONS】AOP 01 AOP功能测试
  9. Webstorm 2021 开启内存显示设置
  10. Springboot: 修改启动时默认图案