首页 > 数据库 >文件切割(sqlit),合并(cat),比对(diff,md5sum)

文件切割(sqlit),合并(cat),比对(diff,md5sum)

时间:2022-09-21 11:27:23浏览次数:56  
标签:09 log 19 md5sum sqlit cat -- 2022 root

1.文件切割sqlit

Linux split命令用于将一个文件分割成数个。

该指令将大文件分割成较小的文件,在默认情况下将按照每1000行切割成一个小文件。

1.1 语法

split [--help][--version][-<行数>][-b <字节>][-C <字节>][-l <行数>][要切割的文件][输出文件名]

1.2 参数说明

  • -<行数> : 指定每多少行切成一个小文件
  • -b<字节> : 指定每多少字节切成一个小文件
  • --help : 在线帮助
  • --version : 显示版本信息
  • -C<字节> : 与参数"-b"相似,但是在切 割时将尽量维持每行的完整性
  • [输出文件名] : 设置切割后文件的前置文件名, split会自动在前置文件名后再加上编号

1.3 sqlit 实例

1.3.1 按行来分割

[root@localhost mytext]# ll
总用量 4104
-rw-r--r--. 1 root root 2097154 9月  20 18:38 2022-09-19.log
-rw-r--r--. 1 root root 2097154 9月  20 18:50 c.log
[root@localhost mytext]# split -200 2022-09-19.log 
[root@localhost mytext]# ll
总用量 6160
-rw-r--r--. 1 root root 2097154 9月  20 18:38 2022-09-19.log
-rw-r--r--. 1 root root 2097154 9月  20 18:50 c.log
-rw-r--r--. 1 root root  745777 9月  20 19:41 xaa
-rw-r--r--. 1 root root  630099 9月  20 19:41 xab
-rw-r--r--. 1 root root  721278 9月  20 19:41 xac
[root@localhost mytext]# 

以上命令执行后,指令"split"会将原来的大文件"2022-09-19.log"切割成多个以"x"开头的小文件。

修改默认以x开头命名的方式:

[root@localhost mytext]# rm -rf x*
[root@localhost mytext]# split -200 -d 2022-09-19.log  2022-09-19.log_
[root@localhost mytext]# ll
总用量 6160
-rw-r--r--. 1 root root 2097154 9月  20 18:38 2022-09-19.log
-rw-r--r--. 1 root root  745777 9月  20 19:44 2022-09-19.log_00
-rw-r--r--. 1 root root  630099 9月  20 19:44 2022-09-19.log_01
-rw-r--r--. 1 root root  721278 9月  20 19:44 2022-09-19.log_02
-rw-r--r--. 1 root root 2097154 9月  20 18:50 c.log
[root@localhost mytext]# 

1.3.2 按指定字节来分割文件

按b

[root@localhost mytext]# ll
总用量 4104
-rw-r--r--. 1 root root 2097154 9月  20 18:38 2022-09-19.log
-rw-r--r--. 1 root root 2097154 9月  20 18:50 c.log
[root@localhost mytext]# split -b 1M -d 2022-09-19.log 2022-09-19.log_
[root@localhost mytext]# ll
总用量 6156
-rw-r--r--. 1 root root 2097154 9月  20 18:38 2022-09-19.log
-rw-r--r--. 1 root root 1048576 9月  20 19:47 2022-09-19.log_00
-rw-r--r--. 1 root root 1048576 9月  20 19:47 2022-09-19.log_01
-rw-r--r--. 1 root root       2 9月  20 19:47 2022-09-19.log_02
-rw-r--r--. 1 root root 2097154 9月  20 18:50 c.log
[root@localhost mytext]# 

按C

[root@localhost mytext]# split -C 1M -d 2022-09-19.log 2022-09-19.log_
[root@localhost mytext]# ll
总用量 6156
-rw-r--r--. 1 root root 2097154 9月  20 18:38 2022-09-19.log
-rw-r--r--. 1 root root 1011263 9月  20 19:49 2022-09-19.log_00
-rw-r--r--. 1 root root 1048353 9月  20 19:49 2022-09-19.log_01
-rw-r--r--. 1 root root   37538 9月  20 19:49 2022-09-19.log_02
-rw-r--r--. 1 root root 2097154 9月  20 18:50 c.log
[root@localhost mytext]# 

2 文件合并

[root@localhost mytext]# ll
总用量 4104
-rw-r--r--. 1 root root 2097154 9月  20 18:38 2022-09-19.log
-rw-r--r--. 1 root root 1011263 9月  20 19:49 2022-09-19.log_00
-rw-r--r--. 1 root root 1048353 9月  20 19:49 2022-09-19.log_01
-rw-r--r--. 1 root root   37538 9月  20 19:49 2022-09-19.log_02
[root@localhost mytext]# cat 2022-09-19.log_00 2022-09-19.log_01 2022-09-19.log_02 >3.log
[root@localhost mytext]# ll
总用量 6156
-rw-r--r--. 1 root root 2097154 9月  20 18:38 2022-09-19.log
-rw-r--r--. 1 root root 1011263 9月  20 19:49 2022-09-19.log_00
-rw-r--r--. 1 root root 1048353 9月  20 19:49 2022-09-19.log_01
-rw-r--r--. 1 root root   37538 9月  20 19:49 2022-09-19.log_02
-rw-r--r--. 1 root root 2097154 9月  20 19:51 3.log
[root@localhost mytext]# 

3.比对文件是否相同

3.1diff 

Linux diff 命令用于比较文件的差异。

diff 以逐行的方式,比较文本文件的异同处。如果指定要比较目录,则 diff 会比较目录中相同文件名的文件,但不会比较其中子目录。

3.1.1 常用参数

  • -c  显示全部内文,并标出不同之处。
  • -s或--report-identical-files  若没有发现任何差异,仍然显示信息。

3.1.2 示例

[root@localhost mytext]# ll
总用量 6156
-rw-r--r--. 1 root root 2097154 9月  20 18:38 2022-09-19.log
-rw-r--r--. 1 root root 1011263 9月  20 19:49 2022-09-19.log_00
-rw-r--r--. 1 root root 1048353 9月  20 19:49 2022-09-19.log_01
-rw-r--r--. 1 root root   37538 9月  20 19:49 2022-09-19.log_02
-rw-r--r--. 1 root root 2097154 9月  20 19:51 3.log
[root@localhost mytext]# diff -s 2022-09-19.log 3.log 
檔案 2022-09-19.log 和 3.log 相同

3.2 使用md5sum 来计算和比对前后两个大文件的 md5 值

[root@localhost mytext]# ll
总用量 6156
-rw-r--r--. 1 root root 2097154 9月  20 18:38 2022-09-19.log
-rw-r--r--. 1 root root 1011263 9月  20 19:49 2022-09-19.log_00
-rw-r--r--. 1 root root 1048353 9月  20 19:49 2022-09-19.log_01
-rw-r--r--. 1 root root   37538 9月  20 19:49 2022-09-19.log_02
-rw-r--r--. 1 root root 2097154 9月  20 19:51 3.log
[root@localhost mytext]# md5sum 2022-09-19.log
fe393f0fe9398f48fbf2b16692862b02  2022-09-19.log
[root@localhost mytext]# md5sum 3.log 
fe393f0fe9398f48fbf2b16692862b02  3.log
[root@localhost mytext]# md5sum 2022-09-19.log_00
39976bb3b2a3fd348521af7eb37f78a3  2022-09-19.log_00
[root@localhost mytext]# md5sum 2022-09-19.log_01
0ddaba1ec6d25a0389d00891fc6c3529  2022-09-19.log_01
[root@localhost mytext]# md5sum 2022-09-19.log_02
c5dff381a5fb44d36b0159fbe509b2dc  2022-09-19.log_02
[root@localhost mytext]# 

 注意:md5sum读取的是文件内容,与文件名无关。

标签:09,log,19,md5sum,sqlit,cat,--,2022,root
From: https://www.cnblogs.com/joyware/p/16714899.html

相关文章

  • mysql安装和连接Navicat
    mysql安装可参考下面博客,按照步骤可以走通,实测有效,网上其他的乱七八糟的,诶https://www.cnblogs.com/itcui/p/15511683.html安装结束后,由于我安装的是8.0版本,在连接Navica......
  • dotnet 为大型应用接入 ApplicationStartupManager 启动流程框架
    对于大型的应用软件,特别是客户端应用软件,应用启动过程中,需要执行大量的逻辑,包括各个模块的初始化和注册等等逻辑。大型应用软件的启动过程都是非常复杂的,而客户端应用软件......
  • WebApplication.CreateBuilder(args); 当前上下文不存在WebApplication
       WebApplication.CreateBuilder(args);中的 WebApplication属于命名空间Microsoft.AspNetCore.Builder 但是引用之后,发现找不到对应的命名空间。原因是这个......
  • 数据库删除常用方法与区别分析 TRUNCATE和DELETE只删除数据,DROP则删除整个表(结构和数
    数据库删除常用方法与区别分析TRUNCATE和DELETE只删除数据,DROP则删除整个表(结构和数据)学习如何使用数据库是大多数软件编程开发程序员都应该熟练掌握的一个编程技......
  • dotnet 为大型应用接入 ApplicationStartupManager 启动流程框架
    对于大型的应用软件,特别是客户端应用软件,应用启动过程中,需要执行大量的逻辑,包括各个模块的初始化和注册等等逻辑。大型应用软件的启动过程都是非常复杂的,而客户端应用软件......
  • Tomcat 8.5.82源码文件导入IDEA
    闲来无事学习一下tomcat源码,导入过程记录如下首先官网下载tomcat源码,下载地址:ApacheTomcat®-ApacheTomcat8SoftwareDownloads将下载的源码解压到本地目录......
  • df.drop_duplicates() 详解
     删除含有指定元素的行或列,或删除指定行,列用法:DataFrame.drop(labels=None,axis=0,index=None,columns=None,inplace=False)参数说明:labels就是要删除的行列的名字,......
  • Navicat16的安装
    Navicat官网:https://navicat.com.cn/链接:https://pan.baidu.com/s/1uSQbdvBIEo-ELHOwQu8dZg提取码:qvl1下载安装navicat,没有难度。激活注册要断网!!!先关闭nav......
  • Tomcat异常处理机制
    声明源码基于SpringBoot2.3.12中依赖的Tomcat异常例子tomcat中返回错误页面目前主要是以下两种情况。执行servlet发生异常程序中主动调用response.sendError()方......
  • 字符串转行 help_topic GROUP_CONCAT
    GROUP_CONCATmysql.help_topicselectGROUP_CONCAT(id)asidsfromtest#4488,4489,4490,4491,4492,4493,4494SET@ids='4488,4489,4490,4491,4492,4493,4494';......