最近搞数据,由于文件太大,执行sql困难,于是分割文件为较多个小文件,学习一个新命令。分享如下:
Linux csplit命令用于分割文件。
语法
csplit [-kqsz][-b<输出格式>][-f<输出字首字符串>]
[-n<输出文件名位数>][--help][--version][文件][范本样式...]
参数:
- -k或--keep-files 保留文件,就算发生错误或中断执行,也不能删除已经输出保存的文件。
- -q或-s或--quiet或--silent 不显示指令执行过程。
- -z或--elide-empty-files 删除长度为0 Byte文件。
- --help 在线帮助。
- --version 显示版本信息
例 :csplit -k -f TEST_2137 -b "%04d.sql" TEST_2137.bak 22600 {10}
把文件TEST_2137.bak 每22600 行分隔,然后最多生成10个文件,文件名前缀TEST_2137 后缀是4位数字然后.sql