linux多进程分割大文件,Linux中split大文件分割和cat合并文件详解
前言
当需要将较大的数据上传到服务器,或从服务器下载较大的日志文件时,往往会因为网络或其它原因而导致传输中断而不得不重新传输。这种情况下,可以先将大文件分割成小文件后分批传输,传完后再合并文件。
1. 分割文件
文件分割可以使用split命令,该即支持文本文件分割,又支持二进制文件分割;而合并文件可以使用cat命令。
1.1 文本文件分割
分割文本文件时,可以按文件大小分割,也可以按文本行数分割。
按文件大小分割
按文件大小分割文件时,需要以-C参数指定分割后的文件大小:
$ split -C 100M large_file.txt stxt
如上所示,我们将大文件large_file.txt按100M大小进行分割,并指定了分割后文件前缀stxt;当不指定前缀时,split会自动对分割文件进行命名,一般会以x开头。
按行分割
文本文件还可以以行为单位进行分割,以行数进行分割时会忽略文件大小,并以-l参数指定分割后文件的行数:
$ split -l 1000 large_file.txt stxt
1.2 二进制文件分割
二进制文件分割类似于按大小分割文本文件,不同的是以-b参数来指定分割后的文件大小:
$ split -b 100M data.bak sdata
2. 文件合并
文件合并使用cat命令,上面几种方式分割的文件都可以使用cat命令合并。
cat命令合并分割文件:
$ cat stxt* > new_file.txt
3. 命令格式
3.1 split命令说明
split命令格式如下:
split [选项]... [要切割的文件 [输出文件前缀]]
命令参数
-a, --suffix-length=N 使用长度为 N 的后缀 (默认 2)
-b, --bytes=SIZE 设置输出文件的大小。支持单位:m,k
-C, --line-bytes=SIZE 设置输出文件的最大行数。与 -b 类似,但会尽量维持每行的完整性
-d, --numeric-suffixes 使用数字后缀代替字母
-l, --lines=NUMBER 设备输出文件的行数
--help 显示版本信息
--version 输出版本信息
3.2 cat命令说明
cat是Linux下使用频率较高的命令之一,该令详细介绍:
cat命令的常见使用场景有:
显示文件内容:
$ cat filename
创建一个空文件:
$ cat > filename
文件合并:
$ cat file1 file2 > file
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。
linux多进程分割大文件,Linux中split大文件分割和cat合并文件详解相关推荐
- linux中用zip压缩文件,详解Linux中zip压缩和unzip解压缩命令及使用详解
下面给大家介绍下Linux中zip压缩和unzip解压缩命令详解 1.把/home目录下面的mydata目录压缩为mydata.zip zip -r mydata.zip mydata #压缩myda ...
- linux命令wget的url路径太长,Linux中WGET下载https链接及WGET命令的详解
Linux中WGET下载https链接及WGET命令的详解 使用如下的命令下载https链接: ```bash wget -r -np -nd --accept=gz --no-check-certi ...
- java 输入流可以合并吗_Java 使用IO流实现大文件的分割与合并实例详解
java 使用IO流实现大文件的分割与合并 文件分割应该算一个比较实用的功能,举例子说明吧比如说:你有一个3G的文件要从一台电脑Copy到另一台电脑, 但是你的存储设备(比如SD卡)只有1G ,这个时 ...
- 站长在线Python精讲:在Python中使用split()方法分割、使用join()方法合并字符串详解
欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是<在Python中使用split()方法分割.使用join()方法合并字符串详解>.本知识点主要内容有:在Python中使用s ...
- python怎么去掉视频字幕_利用Python实现字幕挂载(把字幕文件与视频合并)思路详解...
其实超简单超简单!python好现成的库,一下子省略了好多步骤! 本文在Windows环境下!linux只是不需要手动输入imagicmagick的位置! 需要用到的环境 python(基本上只要不是 ...
- php中单引号,php中的单引号、双引号和转义字符详解
PHP单引号及双引号均可以修饰字符串类型的数据,如果修饰的字符串中含有变量(例$name):最大的区别是: 双引号会替换变量的值,而单引号会把它当做字符串输出. 例如: 结果: 字符串$name 字符 ...
- python six模块详解_对python中的six.moves模块的下载函数urlretrieve详解
实验环境:windows 7,anaconda 3(python 3.5),tensorflow(gpu/cpu) 函数介绍:所用函数为six.moves下的urllib中的函数,调用如下urllib ...
- python什么意思k_对python中的*args与**kwgs的含义与作用详解
对python中的*args与**kwgs的含义与作用详解 在定义函数的时候参数通常会使用 *args与**kwgs,形参与实参的区别不再赘述,我们来解释一下这两个的作用. *args是非关键字参数, ...
- 小程序怎么处理轮训ajax,微信小程序中使用Promise进行异步流程处理的实例详解...
微信小程序中使用Promise进行异步流程处理的实例详解 我们知道,JavaScript是单进程执行的,同步操作会对程序的执行进行阻塞处理.比如在浏览器页面程序中,如果一段同步的代码需要执行很长时间( ...
- [ASP.NET]ASP.NET中的Inherits、CodeFile、CodeBehind的区别详解及OWIN及IDENTITY
篇一 : ASP.NET中的Inherits.CodeFile.CodeBehind的区别详解 Inherits.CodeFile.CodeBehind 在 ASP.NET 中使用代码隐藏方法来设计W ...
最新文章
- 完成个人中心—导航标签
- python开发学习记录
- Azure站点恢复之----VMM 站点到ASR
- JDK/Java SE官方文档汇总
- 深度学习笔记_基本概念_逆卷积的详细解释ConvTranspose2d(fractionally-strided convolutions)
- python调用本地exe_python调用exe程序 python怎么调用exe程序
- 往十年不忘初心,新十年不负韶华丨万字长文带你完整回顾2020数据技术嘉年华
- java 两张图片合并_java实现把两张图片合并(Graphics2D)
- VS2008创建C++项目
- 与MySQL的纠缠(卸载与安装)
- 2015网页导航设计趋势案例大搜罗
- Sencha 项目多语言和多主题的 build 配置
- python七段数码管显示字母代码_python实现七段数码管显示
- android 外接扫码枪_Android手机(设备)连接扫描枪扫码遇到的问题
- 《实施Cisco统一通信管理器(CIPT1)》一2.5 跨越IP WAN的集群部署模型
- 美国大学计算机专业排名2014,2013-2014USNews美国大学计算机工程专业研究生排名...
- C语言-switch-case语句与多分支结构
- 微信消息管理之被动回复用户消息
- Springboot中如何优雅的写好Controller层代码
- Linux/Ubuntu网络知识
热门文章
- VS2015 C#6.0 中的那些新特性(转)
- 洞察|2019年混合云发展:前景广阔 巨头混战 SD-WAN成重要推手
- 不玩游戏,何谈人生!
- centos7 mysql安装_CentOS7安装MySQL(详解)
- 【图像去噪】基于matlab GUI HSI彩色图像去噪【含Matlab源码 1786期】
- 【短时平均过零率】基于matlab语音信号短时平均过零率【含Matlab源码 1721期】
- 【飞行器】基于matlab GUI四旋翼飞行器PID控制仿真【含Matlab源码 1279期】
- 【运动学】基于matlab Singer模型算法机动目标跟踪【含Matlab源码 1157期】
- 【图像修复】基于matlab GUI维纳滤波图像复原【含Matlab源码 851期】
- 【车牌识别】基于matlab GUI BP神经网络车牌识别【含Matlab源码 669期】