美文网首页
[Linux]diff 逐行比较文件、 patch更新文本文件

[Linux]diff 逐行比较文件、 patch更新文本文件

作者: AkuRinbu | 来源:发表于2018-09-11 18:54 被阅读31次

    diff 逐行比较文件

    上下文格式 -c

    • $ diff -c todo.txt answer.txt
      diff.PNG
    • 修改 todo.txt文件,使得它与answer.txt文件内容一致;

    说明

    • *** 1,4 ****星号表示第一个文件todo.txt
    • --- 1,4 ----破折号表示等二个文件answer.txt
    • 数字1,4表示文件的第1行 到 第4行
    • (无),表示两个文件共有的行;
    • -,表明此行只在todo.txt有,answer.txt里面没有;
    • +,表明此行只在answer.txt,而todo.txt中则没有;
    • !

    统一格式 -u

    • $ diff -u todo.txt answer.txt
      diff -u todo.txt answer.txt

    patch

    • $ diff -Naur todo.txt answer.txt > patchfile.txt
    • $ patch < patchfile.txt
      patch更新文本文件

    说明

    • patch根据patchfile.txt更新了todo.txt;
    • todo.txt变得和answer.txt一模一样;
    • patchfile.txt的内容等价于$ diff -u todo.txt answer.txt

    参考资料

    《Linux命令行大全》
    20.4.2 diff—逐行比较文件
    20.4.3 patch—对文件进行diff操作
    https://www.jianshu.com/p/accaef5bc096

    相关文章

      网友评论

          本文标题:[Linux]diff 逐行比较文件、 patch更新文本文件

          本文链接:https://www.haomeiwen.com/subject/pozugftx.html