shell中常用的命令---diff和patch

shell中常用的命令—diff和patch

1. diff用法

diff file1 fil2

以后面的文件file2作为标准 比较file1相对于file2来说有什么不同

< 表示第一个文件中的内容
> 表示第二个文件中的内容
a表示添加–add
c表示更改–change
d表示删除–delete

[root@node2 diff-patch]# cat file1
1234
haha
[root@node2 diff-patch]# cat file2
1234
hehexi
[root@node2 diff-patch]# diff file1 file2
2c2			#第一个文件的第二行要经过更改变成第二个文件的第二行
< haha		#第一个文件中的haha
---
> hehexi	#改成第二个文件中的hehexi
[root@node2 diff-patch]# diff file2 file1
2c2
< hehexi
---
> haha

在这里插入图片描述

[root@node2 diff-patch]# cat file1
12
hehexi
haha
[root@node2 diff-patch]# cat file2
1234
hehexi
[root@node2 diff-patch]# diff file2 file1
1c1
< 1234
---
> 12
2a3			#第一个文件的第二行要添加第二个文件的第三行
> haha

在这里插入图片描述

2.diff比较目录

diff -r /etc/ /tmp/

注意:比较的结果是目录中文件的不同 而不是文件内容的不同

3.patch用法

patch常用来打补丁

在这里插入图片描述

diff -u file2 file1
diff -u file2 file1 > file2.path	#首先需要生成补丁文件
ls

在这里插入图片描述

patch file2 file2.path 
yum instal; patch.x86_64 -y
patch file2 file2.path 		#再用patch命令打补丁
cat file2
cat file1

在这里插入图片描述
注意:用这种方法打补丁 文件会直接被修改成指定文件内容 原文件内容会被覆盖
要留下原文件内容:

cat file3
cat file1
diff -u file3 file1 >file3.path
patch -b file3 file3.path	#-b表示保留原文件内容
ls
cat file3.orig 				#原文件内容

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值