• diff与patch


    1.diff

        diff就是用来比较两个文件之间的区别的,并且是以行为单位比较的,通常用在同一文件或软件的新旧版本区别上。

     

    用法: diff [-bBi] from-file to-file

    from-file:一个文件名,作为欲比较的文件名

    to-file:一个文件名,作为目的比较的文件名

    -b:忽略一行中仅有多个空白的区别

    -B:忽略空白行的区别

    -i:忽略大小写的不同

     

    例:

    [root@server3 mnt]# cat file1

    qwer

    asdf

    [root@server3 mnt]# cat file2

    qwer

    asd

    zx

    [root@server3 mnt]# diff file1 file2

    2c2,3       #左边第二行被替换掉了,基准是右边的第二行

    < asdf         

    ---

    > asd

    > zx

     

     

    patch

    用法:  patch -pN < patch_file  更新

        patch -R -pN < patch_file 还原

    -p:后面的N代表取消几层目录的意思

    -R:代表还原,将新的文件还原成原来旧的版本

     

    例:

    [root@server3 mnt]# diff -Naur file1 file2 >file.patch    #制作不定文件

    [root@server3 mnt]# ls

    acltest  catfile  file2       kk  ll.lll  passwd  sh

    bashrc   file1    file.patch  ks  lvm     raid    ss

    [root@server3 mnt]# cat file.patch

    --- file1   2019-01-17 20:04:43.362000000 +0800

    +++ file2   2019-01-17 20:05:03.101000000 +0800

    @@ -1,2 +1,3 @@

     qwer

    -asdf

    +asd

    +zx

    [root@server3 mnt]# patch -p0 < file.patch            #更新

    patching file file1

    [root@server3 mnt]# ll file*

    -rw-r--r-- 1 root root  12 Jan 17 20:13 file1

    -rw-r--r-- 1 root root  12 Jan 17 20:05 file2

     

    [root@server3 mnt]# patch -R -p0 <file.patch          #还原

    patching file file1

    [root@server3 mnt]# ll file*

    -rw-r--r-- 1 root root  10 Jan 17 20:14 file1

    -rw-r--r-- 1 root root  12 Jan 17 20:05 file2

     

  • 相关阅读:
    【pandas】读取csv并拆分列
    【Python】读写csv、xlsx乱码,一篇文章搞定
    【mac】彻底移出安装包密码
    【finebi】基于波士顿矩阵模型的应用
    【pandas】3种方法搞定,分组排序求topN
    Supervisord远程命令执行漏洞(CVE-2017-11610)复现
    Visual studio + Qt VS Tool 开发环境相关问题汇总
    SQL学习(五) 高级处理
    SQL学习(四)集合运算
    SQL学习(三) 复杂查询
  • 原文地址:https://www.cnblogs.com/zhengyipengyou/p/10284440.html
Copyright © 2020-2023  润新知