mirror of
https://github.com/LCTT/TranslateProject.git
synced 2025-01-28 23:20:10 +08:00
发布:Linux diff Command Explained With Examples
This commit is contained in:
parent
f2fed8a528
commit
a0233fd50d
@ -32,16 +32,16 @@
|
||||
|
||||
$ diff file1 file2
|
||||
1d0
|
||||
< Hi, 2a2 > Hi,
|
||||
< Hi,
|
||||
2a2
|
||||
> Hi,
|
||||
4,5c4
|
||||
< I am fine,
|
||||
< Thank you.
|
||||
|
||||
—
|
||||
|
||||
---
|
||||
> I am fine.
|
||||
|
||||
你可以看见diff后面跟了两个文件的名字作为命令行的参数,并且它在输出中生成了不同。输出并不容易理解。理由是,这是被计算机使用的而不是为了人类。尽管如此,让我们一步步解码输出:
|
||||
你可以看见diff后面跟了两个文件的名字作为命令行的参数,并且它在输出中生成了差异比较。输出并不容易理解。理由是,这是被计算机使用的而不是为了人类。尽管如此,让我们一步步解码输出:
|
||||
|
||||
**注意** – 在下面的文本中,file1和file2将被当作旧文件和新文件。
|
||||
|
||||
@ -58,9 +58,7 @@
|
||||
4,5c4
|
||||
< I am fine,
|
||||
< Thank you.
|
||||
|
||||
—
|
||||
|
||||
---
|
||||
> I am fine.
|
||||
|
||||
这里,4,5c4这一行意味着在旧文件中的4到5行现在已被改变并且需要用新文件中的第4行代替。添加和删除的行分别用'>'和'<'表示。
|
||||
@ -68,7 +66,7 @@
|
||||
那么,来总结一下,
|
||||
|
||||
- 首先diff命令的第一个参数被视为旧文件而第二个参数被视为新文件。
|
||||
- 像1d0 2a2, 4,5c4这种表达式可以用语法解码为 **[旧文件的行号或者行的范围][行为][新文件的行号或者行的范围]**。这里的'行为'可以使追加,删除或者改变替换。
|
||||
- 像1d0、2a2、4,5c4这种表达式可以用语法解码为 **[旧文件的行号或者行的范围][行为][新文件的行号或者行的范围]**。这里的'行为'可以是追加,删除或者改变替换。
|
||||
- '<'代表删除的行,而'>'代表添加的行。
|
||||
|
||||
除了文件外,diff命令还可以比较两个目录。让我们通过一个例子学习。
|
||||
@ -93,7 +91,7 @@
|
||||
|
||||
你可以看到当diff命令被用来比较这两个目录时,很容易就会显示两个文件中缺失的文件。
|
||||
|
||||
下面是在命令行下常用的选项:
|
||||
下面是一些在命令行下常用的选项:
|
||||
|
||||
### 1. 用 -i 忽略大小写 ###
|
||||
|
||||
@ -109,7 +107,9 @@
|
||||
|
||||
$ diff file1 file2
|
||||
1c1
|
||||
< HI — > hi
|
||||
< HI
|
||||
---
|
||||
> hi
|
||||
|
||||
你可以看见diff命令在输出中报告了大小写不同。
|
||||
|
||||
@ -151,9 +151,7 @@
|
||||
$ diff file1 file2
|
||||
1c1
|
||||
< Hi, how are you?
|
||||
|
||||
—
|
||||
|
||||
---
|
||||
> Hi, how are you?
|
||||
|
||||
因此你可以看到diff命令报告了不同。但是如果你想要忽略这些空格,使用 -b 选项。
|
Loading…
Reference in New Issue
Block a user