linux对比两个文件的差异

在项目维护阶段,经常会对垃圾文件进行清理。比如没有在数据库中的文件进行删除,这个时候最好的选择就是使用shell命令了;废话不多说直接上代码:

1.首先准备好从数据表导出来的数据,方法随意

2.在服务器查看指定目录下所有文件的文件名,并生成文件   

  ls *.* >***.txt

3.对比两个文件的文件内容不同的部分,并且删除 

#!/bin/sh
#BEGIN
cat test1.txt | sort | uniq | sort > a_u.txt
cat test2.txt | sort | uniq | sort > b_u.txt
diff a_u.txt  b_u.txt > c.txt
for x in  ` awk ‘{print $2}‘ c.txt `
{
        rm -rf $x;
}
#echo filename
# END

此刻 大功告成!!!

注意:请不要在window下边界shell文件,有可能出现编码问题造成文件名后缀出现?等乱码情况。

原文地址:https://www.cnblogs.com/hhwww/p/10824607.html

时间: 2024-08-29 00:37:26

linux对比两个文件的差异的相关文章

diff 比较两个文件的差异

功能:比较两个文件的差异,并把不同地方的信息显示出来.默认diff格式的信息. diff比较两个文件或文件集合的差异,并记录下来,生成一个diff文件,这也是我们常说的补丁文件.也使用patch命令对相应的文件打补丁.differential [?d?f??ren??l] 语法:diff    [options]   FILESFILES的格式: FILE1 FILE2 :源是一个文件,目标也是文件.这两个文件必须是文本文件.以逐行的方式,比较文本文件的异同处.DIR1 DIR2   :源是一个

python比较两个文件的差异

使用python脚本比较两个文件的差异内容并输出到html文档中,可以通过浏览器打开查看. 一.脚本使用 对比nginx配置文件的差异 python python_diff_file.py -f1 web26.conf -f2 web103.conf 二.脚本内容 #!/usr/bin/python # -*- coding: utf-8 -*- """ 1.difflib的HtmlDiff类创建html表格用来展示文件差异,通过make_file方法 2.make_file

linux比较两个文件的不同(6/21)

cmp 命令:比较任意两个类型的文件,且吧结果输出到标准输出,默认文件相同不输出,不同的文件输出差异 必要参数 -c 显示不同的信息-l 列出所有的不同信息-s 错误信息不提示 选择参数 -i<字符数> 指定字符数目-v 显示版本信息--help 显示帮助信息 [函数的返回值] 0 :文件时同样的1 :文件是不同的>1:发生错误 comm将逐行比较已经排序的两个文件.显示结果包括3列: 第1列为只在file1中找到的行;第2列为只在file2中找到的行;第3列为两个文件的公用行. 参数

快速遍历对比两个文件下的md5值

[[email protected] Activity]# find /opt/xyrpg/rpgserver_s1/XMLData/Activity/ -type f -exec md5sum {} \;|sed 's/rpgserver_s1/rpgserver_s2/'|md5sum -c /opt/xyrpg/rpgserver_s2/XMLData/Activity/ActivityCondition.xml: FAILED /opt/xyrpg/rpgserver_s2/XMLDat

两个文件内容差异对比,

比较两个单行文件的方法就我知道的而言有4种 用diff 用grep 用comm 用uniq [[email protected] ~]# echo "`seq 5`" >file1;cat file1 1 2 3 4 5 [[email protected] ~]# echo "`seq 2 7`" >file2;cat file2 2 3 4 5 6 7 1.用diff -c file1多的是"-"file2多的是"+&q

如何对比两个表字段差异

做这个项目,以前只在业务表增加字段,而没在其历史表增加对应字段 最近客户需要将业务表和历史表的字段保持一致.于是用这个语句来进行对比即可,如果查出来有数据,则表示有字段差异 --2个表比较DECLARE @SourceTableName        VARCHAR(100)DECLARE @DestTableName          VARCHAR(100) SET @SourceTableName = '表名1'SET @DestTableName = '表名2' SELECT A.TAB

对比两个文件相似度 余弦算法

文件A1 包含字符Bi 的个数BiN1,文件A2 包含的字符Bi 的个数BiN2 利用余弦算法:   相似度 = (B1N1*B1N2 +B2N1*B2N2+....+BiN1*BiN2)/(Math.sqrt(B1N1^2 +B2N1^2+....+BiN1^2)*Math.sqrt(B1N2^2 +B2N2^2+....+BiN2^2). Math.sqrt() 代表开方. 具体代码如下: public class SimilarDegreeByCos { /* * 计算两个字符串(英文字符

python对比两个文件问题

写一个比较两个文本文件的程序. 如果不同, 给出第一个不同处的行号和 列号. 比较的时候可以使用zip()函数 1 a=open('test.txt','r') 2 b=open('test2.txt','r') 3 row=0 4 for linea,lineb in zip(a,b): 5 row+=1 6 if not linea==lineb: 7 col=0 8 for chara,charb in zip(linea,lineb): 9 col+=1 10 if not chara=

paste:linux合并两个文件中的列(左右合并)

[[email protected] ~]# paste [-d] file1 file2 选项与参数: -d  :后面可以接分隔字符.默认是以 [tab] 来分隔的! -   :如果 file 部分写成 - ,表示来自 standard input 的数据的意思. 范例一:将 /etc/passwd 与 /etc/shadow 同一行贴在一起 [[email protected] ~]# paste /etc/passwd /etc/shadow bin:x:1:1:bin:/bin:/sbi