linux diff 命令选项

nit*_*ins 1 linux command-line-interface diff

diff cookies.old cookies.new
5c5
< One cup vanilla extract
---
> One teaspoon vanilla extract
7d6
< Six ounces chopped liver
21a22
Run Code Online (Sandbox Code Playgroud)

任何标志/选项可以帮助我摆脱输出中的这个5c57d621a22?这些字符究竟是什么意思?

Den*_*son 6

这些是行号和将一个更改为另一个的操作。“5c5”表示“第5行更改(替换)为第5行”,“7d6”表示“删除第7行”,“21a22”表示“添加(追加)第22行”

您可以使用--context=NUM或等选项更改输出格式--unified

下面是一些更多的信息从输出格式info文件diff

此命令只会显示不同的行,而不会显示行号和修改类型(它还将消除“----”分隔符):

diff cookies.old cookies.new | grep '^[<>]'
Run Code Online (Sandbox Code Playgroud)