[dmtsai@study ~]$
diff [
-
bBi]
from
-
file to
-
file
选项
参数
from
-
file
:一
个档
名,作
原始比
文件
名;
to
-
file
:一
个档
名,作
目的比
文件
名;
注意,
from
-
file
to
-
file
可以
-
取代,那
-
代表『
Standard input
』之意。
-
b
:忽略一行
中,
½
有多
空白的差异
(
例如
"about me"
"about me"
视为
相同
-
B
:忽略空白行的差异。
-
i
:忽略大小
的不同。
范例一:比
passwd.old
passwd.new
的差异:
[dmtsai@study testpw]$
diff passwd.old passwd.new
4d3
<==
第四行被
(d)
掉了,基准是右
的第三行
< adm:x:3:4:adm:/var/adm:/sbin/nologin
<==
这边
列出左
(<)
文件
除的那一行
6c5
<==
文件
的第六行被取代
(c)
成右
文件
的第五行
< sync:x:5:0:sync:/sbin:/bin/sync
<==
(<)
文件
第六行
---
> no six line
<==
(>)
文件
第五行
#
明吧!用
diff
就把我
们刚刚
了!
diff
比对文件真的是很简单喔!不过,你不要用
diff
去比对两个完全不相干的文件,因为比不出
个啥咚咚!
另外,
diff
也可以比对整个目录下的差异喔!举例来说,我们想要了½一下不同的开机
执行等级
(runlevel)
内容有啥不同?假设你已经知道执行等级
0
5
的启动½本分别放置到
/etc/rc0.d
/etc/rc5.d
则我们可以½两个目录比对一下:
[dmtsai@study ~]$
diff /etc/rc0.d/ /etc/rc5.d/
Only in /etc/rc0.d/: K90network
Only in /etc/rc5.d/: S10network
我们的
diff
很聪明吧!还可以比对不同目录下的相同文件名的内容,这样真的很方便喔~
.
cmp
相对于
diff
的广泛用途,
cmp
似乎就用的没有这么多了~
cmp
主要也是在比对两个文件,他主要
利用『字½』单位去比对,
因此,当然也可以比对
binary file
啰~
(
还是要再提醒喔,
diff
主要是
以『行』为单位比对,
cmp
则是以『字½』为单位去比对,这并不相同!
)
[dmtsai@study ~]$
cmp [
-
l] file1 file2
选项
参数
-
l
½
所有的不同
的字
½处
都列出
。因
cmp
预设½会输
出第一
个发现
的不同
范例一:用
cmp
½
一下
passwd.old
passwd.new
[dmtsai@study testpw]$
cmp passwd.old
passwd.new
passwd.old passwd.new differ: char 106, line 4