linux 下处理大文件

 

1head tail more

2、先把大文件进行分割 split

split 参数:
-a, --suffix-length=N   指定输出文件名的后缀,默认为2个
-b, --bytes=SIZE        指定输出文件的字节数
-C, --line-bytes=SIZE  每一输出档中,单行的最大 byte-d, --numeric-suffixes  使用数字代替字母做后缀
-l, --lines=NUMBER    NUMBER 值为每一输出档的列数大小
   
例:
[root@10.10.90.97 sh]# split -b 1024 -a 3 push.sh
[root@10.10.90.97 sh]# ls 
push.sh xaaa  xaab  xaac  xaad  xaae  xaaf
使用-a参数指定文件后缀名的个数为3

[root@10.10.90.97 sh]# split -b 1024 push.sh push_  
[root@10.10.90.97 sh]# ls
push_aa  push_ab  push_ac  push_ad  push_ae  push_af    push.sh
-b参数指定输出文件的大小为1024字节,push_指定输出文件的前缀代替默认的x 

[root@10.10.90.97 sh]# split -b 1024 -d push.sh 
[root@10.10.90.97 sh]# ls
push.sh x00  x01  x02  x03  x04  x05
-d参数设置输出文件的后缀为数字,默认的为字符  

[root@10.10.90.97 sh]# split -l 5 push.sh 
[root@10.10.90.97 sh]# ls
push.sh  xaa  xac  xae  xag  xai  xak  xam  xao  xaq  xas  xau  xaw  xay  xba
xab  xad  xaf  xah  xaj  xal  xan  xap  xar  xat  xav  xax  xaz
-l指定输出稳定的行数为5 

附:合并文件命令(会自动按后缀排序连接):
    cat small_files* > large_file

3sed 按行进行处理
    总行数:wc -l 文件名

    sed -n 1,1024(文件总行数)p filename;#依次输出文件的每一行

4awk 一次读取文件中的一行
    awk {print;} employee.txt  #依次输出文件的每一行

linux 下处理大文件,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。