Linux 命令合集 文件与目录管理相关命令之一
diff 指令:比较文本文件的差异
语法:diff [-abBcdefHilnPqrsTuvwy][-<行数>][-C<行数>][-D<巨集名称>][-I<字符或字符串>][-s<文件>][-W <宽度>][-x<文件或目录>][-X<文件>][--help][--left-column][--suppress-common-line][文件或目录 1][文件或目录 2]
功能介绍:该指令主要用于对文本文件之间进行差异比较,并列出不同之处
参数说明:
注意:
如果用户使用 “-” 表示文件或目录名时,将默认从标准输入设备中读取数据进行比较。
经验技巧:
diff 指令是以逐行的方式,比较文本文件的异同处。
如果该指令指定进行目录的比较,则将会比较该目录中具有相同文件名的文件,而不会对其子目录文件进行任何比较操作
示例:将目录 “/usr/li” 下的文件 test.txt 与当前目录下的 test.txt 进行比较,则输入以下命令:
$ diff /usr/li test.txt # 使用 diff 指令对文件进行比较
上面的命令执行以后,会将比较后的不同之处以指定的形式列出。代码如下所示
n1 a n3, n4 n1, n2 d n3 n1, n2 c n3, n4
其中,字母 a, b, c 分别表示添加、删除以及修改操作。而 n1、n2 表示在文件1中的行号,n3、n4 表示在文件2中的行号
注意:
以上说明指定了两个文件中不同处的行号及其相应的操作。在输出形式中,每一行后面将跟随受到影响的若干行。其中,以 “<“ 开始的行属于文件1,以 ”>” 开始的行属于文件2。