linux查看文件大小以m为单位_【基础】Linux运维实战大文件切割

关注我,你的眼睛会怀孕

ccdc8bb62eee56651023a9537c8cfa89.png

日常工作中需要对日志文件进行分析,当日志文件过大时,Linux中使用vim、cat、vim、grep、awk等这些工具对大文件日志进行分析将会成为梦魇,具体表现在:

  • 执行速度缓慢,文件内容需要加载到内存中,涉及大量的磁盘读;

  • 耗费资源过多,一个4G空间的日志文件需要至少4G的内存,更大的呢?

  • 内容难以复用,分析过滤文件时会用管道对输出文件进行处理,大文件下难以复用;

  • 文件传输困难,大文件需要传输给其他人进行分析,文件太大,全量传输带宽耗费大。

0651d83dcfd6a33552ea2d6b47c28855.png

1 查阅大文件之痛

大数据离线处理框架hadoop可以处理这些场景,然而hadoop也需要耗费较长的时间进行计算,而且还需要去编写MapReduce任务,诚然这种方法带来更大的难度和挑战。hadoop中是通过将大文件切割成多个小文件,通过多个mapreduce任务做并行处理,Linux提供了一个简单易用的split工具,可以实现将文件切割成多个小文件。

afbd966ab3fa98654afee4856b853134.png

split提供两种方式对文件进行切割:

  • 根据行数切割,通过-l参数指定需要切割的行数

  • 根据大小切割,通过-b参数指定需要切割的大小

2.1 根据行数切割

如下以一个3.4G大小的日志文件做切割演示,每一个文件按照50000行做切割,指定文件名为split-line,-d参数以数字的方式显示

 右边滑动查看完整命令

75ab105d2401d55a3378fd152abb59c2.png

db112d12c0b0c016f8cada66eae114aa.png

指定行数后会自动做切割,即达到5000行之后自动切割,通过-d参数文件名会自动以数字的方式命名,切割后,每个文件大小为14M,此时再对文件进行分析将会方便边界很多,同时文件数量也会很多,可以增加行数的方式进行切割,方便分析。

2.2 根据大小切割

除了按照行数切割之外,split还支持通过文件大小进行切割,通过指定-b参数指定文件大小进行切割,文件大小单位支持K, M, G, T, P, E, Z,如下以切割为500M演示文件切割过程

 右边滑动查看完整命令

4b937d0999aefab95517cc08633a551f.png

2.3 多文件合并

split是用户将大文件切割为多个小文件,如果需要将多个小文件合并为一个文件怎么处理呢? 可以使用文件重定向方式实现,如下演示两个小文件合并为一个文件

 右边滑动查看完整命令

38d357cbfd29338dbaef56819eb1c880.png

合并方式通过读取文件的方式+输出重定向,对于大文件一样会存在性能的问题,建议根据需要使用。

来源:

https://cloud.tencent.com/developer/article/1576576

微思近期开班计划

a6237663ca65ae60f32076b90a37e896.png

年度热文

689a723e1ee8fce5e5280f62204132b1.png

【必看】一次心惊肉跳的服务器入侵排查....

【必看】IT行业常用专业术语,你get到了吗?

【必看】网络工程师技能图谱,这些你都会吗?

【干货】服务器性能优化的8种常用方法

【干货】网工常见面试题集锦(一)

【收藏】网工常见面试题集锦(二)

【必看】这些Linux命令能解决95%以上的问题

【必看】超全Linux工作规划线路图

【必看】网工面试必答问题,看完OFFER轻松拿

【干货】华为交换机端口vlan详解

【干货】什么样的网络需要划分VLAN?

【干货】组播原理协议讲解

【收藏】网络故障处理手册大全,看完再也不怕出问题了



19f946f4e4a8aa3cb00012c0d170f9b5.png

系统集成/认证培训

买设备,找我们

IT维保,找我们

IT培训,找我们

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值