lfjjia 2010-06-13
转:http://hi.baidu.com/bwchaos/blog/item/e2262317b7d2dc004b90a748.html
切割合并文件在linux下用split和cat就可以完成。下面举些实例进行说明。
1.文件切割
文件切割模式分为两种:文本文件;二进制模式。
1.1文本模式文本模式只适用于文本文件,用这种模式切割后的每个文件都是可读的。文本模式又分为两种:
按最大文件大小切割;按文本行数切割。
1.1.1最大文件大小切割
split -C 5k duanxin split
将文本文件duanxin按每块最大5k的大小进行切割,不打碎行。输出文件名类似splitaa, splitab……1.1.2 按文本行数切割
split -l 100 duanxin split
每个分块100行,不考虑大小。日志分析时应该有用。
1.2 二进制模式
split -b 5k duanxin split
每个分块(当然,最后一个不保证)大小都是5k,基本不可读。任何类型文件都可以用这种切割模式。
2.文件合并
cat split* >newduanxin
不管用什么方式切割,合并方法不变。
3.其它
split可以用-a选项指定输出文件名的长度。如
split-l100-a3duanxinsplit
则输出文件出类似于splitaaa,splitaab。不指定时默认为2。
用-b或-C指定分块大小时,可用的单位有,bfor512bytes,kfor1Kbytes,mfor1Megbytes.