您的位置:首页 > 其它

拆分文件

2016-02-23 15:26 246 查看
在Linux运维中,拆分文件是非常重要的,现在和大家分享一下拆分的过程:

第一种拆分就是以文件中的字段进行拆分,本例子是文件中的第一个字段进行拆分

(1)要拆分的文件201602_1100_test_1200_0001.doc,如图:



(2)将上述文件拆分为8个小文件,执行下述命令,如图所示:



cat 201602_1100_test_1200_0001.doc | awk -F '||' '{if(($1=="11") ||($1=="12")||($1=="13")||($1=="14")) print $0}'>>1.txt

截图中的$1表示文件201602_1100_test_1200_0001.doc的第一列字段,同样$2表示第二列字段,$3表示第三列字段,

print $0表示打印当前行

AWK -F ‘||’表示该文件是以||为分隔符

(3)拆分所得的结果如图所示:



第二种拆分就是以文件中的行数进行拆分,本例子就是将文件拆分成10行为一个小文件。

(1)要拆分的文件201602_1100_test_1200_0001.doc



(2)执行命令进行拆分



    endsize=`expr $startsize + 9`  #分割结束的行数

   加法运算用指令expr进行计算,

   sed -n "${startsize},${endsize}p" 201602_1100_test_1200_0001.doc >> test"_"${num}'.REQ',执行这个命令,进行拆分

   ${startsize},${endsize}p,开始行号和结束行号,注意字母p必不可少,循环中文件的行数变化为1-10,11-20。。。

    num1=`expr $num + 1` 

    num=`echo "$num1"|awk '{printf("%04d", $0)}'`

   这两句是计算拆分后文件的个数,位数不足4位,左补零

(3)拆分结果所示

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: