Linux下split 命令使用详解
发布:smiling 来源: PHP粉丝网 添加日期:2015-05-05 15:33:59 浏览: 评论:0
从函数层面上来看是对文件进行切割了,我们可以使用split命令进行文件的很多操作,下现来看几个Linux下split 命令使用例子.
按大小切割,每100M切割:split -b 100m filename
按行数切割,每100w行切割,并带上前缀:split -l10000000 pc.txt i_
合并:cat x* > pc.txt
split:切割文件
语 法:split [--help][--version][-b <字节>][-C <字节>][-l <行数>][要切割的文件][输出文件名]
补充说明:split可将文件切成较小的文件,预设每1000行会切成一个小文件
参 数:
-l<行数> 指定每多少行就要切成一个小文件
-b<字节> 指定每多少字就要切成一个小文件。支持单位:m,k
-C<字节> 与-b参数类似,但切割时尽量维持每行的完整性
?help 显示帮助
?version 显示版本信息
[输出文件名] 设置切割后文件的前置文件名,split会自动在前置文件名后再加上编号.
实例1、以每个文件1000行分割
split命令分割文件成每个文件1000行,并且文件名依次为 [前缀]aa,[前缀]ab,[前缀]ac等,默认的前缀是X,每个文件的行数为1000行,命令如下:
- $ split mylog
- $ wc -l *
- 4450 mylog
- 1000 xaa
- 1000 xab
- 1000 xac
- 1000 xad
- 450 xae
实例2、以每个文件20MB分割
分割文件为多个20MB的文件,附带-b选项命令如下:
- $ split -b 20M logdata
- $ ls -lh | tail -n +2
- -rw------- 1 sathiya sathiya 102M Jul 25 18:47 logdata
- -rw------- 1 sathiya sathiya 20M Jul 25 19:20 xaa
- -rw------- 1 sathiya sathiya 20M Jul 25 19:20 xab
- -rw------- 1 sathiya sathiya 20M Jul 25 19:20 xac
- -rw------- 1 sathiya sathiya 20M Jul 25 19:20 xad
- //phpfensi.com
- -rw------- 1 sathiya sathiya 20M Jul 25 19:20 xae
- -rw------- 1 sathiya sathiya 1.6M Jul 25 19:20 xaf
实例3、以每个文件50MB指定前缀分割
使用--bytes选项把文件分割成多个50MB的文件,--bytes类似-b选项,在第二个参数指定前缀.
- $ split --bytes=50M logdata mydatafile
- $ ls -lh
- total 204M
- -rw------- 1 sathiya sathiya 102M Jul 25 18:47 logdata
- -rw------- 1 sathiya sathiya 50M Jul 25 19:23 mydatafileaa
- -rw------- 1 sathiya sathiya 50M Jul 25 19:23 mydatafileab
- -rw------- 1 sathiya sathiya 1.6M Jul 25 19:23 mydatafileac
实例4、基于行数分割文件
使用-l选项指定行数来把文件分割成多个行数相同的文件.
- $ wc -l testfile
- 2591 testfile
- $ split -l 1500 testfile importantlog
- $ wc -l *
- 1500 importantlogaa
- 1091 importantlogab
- 2591 testfile
实例5、以数字后缀命名分割文件
使用-d选项可以指定后缀为数字,如00,01,02..,而不是aa,ab,ac.
- $ split -d testfile
- $ ls
- testfile x00 x01 x02
可用选项
短选项 长选项 选项描述
-b --bytes=SIZE SIZE 值为每一输出档案的大小,单位为 byte。
-C --line-bytes=SIZE 每一输出档中,单行的最大 byte 数。
-d --numeric-suffixes 使用数字作为后缀。
-l --lines=NUMBER NUMBER 值为每一输出档的列数大小。
合并cat使用方法
cat命令
语法:cat [-AbeEnstTuv] [--help] [--version] fileName
-n 或 ?number 由 1 开始对所有输出的行数编号
-b 或 ?number-nonblank 和 -n 相似,只不过对于空白行不编号
-s 或 ?squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
-v 或 ?show-nonprinting
- #cat常用功能
- #一次显示整个文件
- cat filename
- #创建一个文件,只能创建新文件,不能编辑已有文件
- cat > filename
- #将几个文件合并为一个文件。
- cat file1 file2 > file
所以上面的示例中将分割文件合并,可以使用:
- #合并
- cat a.tar.gz.* > a.tar.gz
- #合并并解压
- cat a.tar.gz.* | tar -zxv
Tags: Linux命令 split 命令
相关文章
- ·Linux命令行开发实战(1)(2013-11-14)
- ·Linux Shell脚本Ldd命令原理及使用方法(2014-02-28)
- ·Linux系统下查看文件调用情况Shell命令(2014-03-05)
- ·在shell中捕捉信号的命令(2014-03-07)
- ·利用shell编程实现DOS风格的Linux命令行(2014-03-07)
- ·BASH shell set命令详解(2014-03-07)
- ·Linux的Shell编程bash的内部命令(2014-03-07)
- ·8则实用的Linux Shell命令(2014-03-07)
- ·Linux菜鸟入门级命令大全(2014-03-07)
- ·新手看招 了解UBOOT添加命令的执行流程(2014-03-08)
- ·Linux操作系统下VI编辑器常用命令详细介绍(2014-03-08)
- ·在Linux操作系统中使用命令进行光盘刻录(2014-03-08)
- ·你会使用Linux操作系统下的MAN命令吗?(2014-03-08)
- ·linux 常用命令分类总结(2014-03-08)
- ·Linux系统命令Top/free的使用及参数详解(2014-03-08)
- ·命令行小技巧 使用大括号扩展参数的方法(2014-03-08)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)