一、diff
diff命令的用法:
vimdiff命令
文件wang中的内容如下
文件wang1中的内容如下
用diff命令对比两个文件
更改文件wang中的内容
再次对比两个文件
因此使用diff命令对比两个文件时显示的结果中包含不同字符的含义如下表
字符 | 含义 |
---|---|
结果中的第一个数字numb1 | 第一个文件的行数 |
a | 添加 |
d | 删除 |
c | 更改 |
< | 第一个文件 |
> | 第二个文件 |
a,d,c后接的数字numb2 | 第二个文件的行数 |
diff中常用的参数
当两个文件的内容如下所示,文件2中有两个空格,其余内容一致
-b :表示不检测空格
参数-c:显示文件的所有内容并标识不同
参数-i:忽略大小写检测
参数-r:检测目录
参数-u:合并输出
二、patch
用法:patch 原文件 补丁文件
patch和diff -u结合使用
打补丁
常用参数-b:备份原文件
三、cut
cut命令通常用来截取数据
常见的参数如下:
参数 | 含义 |
---|---|
-d | 指定分隔符 |
-f | 指定显示的lie |
-c | 指定截取的字符 |
指定显示列或字符后接数字的用法
数字格式 | 含义 |
---|---|
3 | 选定第三列 |
3,5 | 选定第三列和第五列 |
3-5 | 选定第三列到第五列 |
-3 | 从开始到第三列 |
3- | 从第三列开始到最后 |
四、sort
可以实现排序的要求
常见的参数如下:
参数 | 含义 |
---|---|
-n | 纯数字排序 |
-r | 倒序排序 |
-u | 去掉重复 |
-o | 输出到指定文件 |
-t | 指定分隔符 |
-k | 指定排序序列 |
在文件中写入如下数字
sort和uniq命令的结合
uniq命令常用的参数如下表
参数 | 含义 |
---|---|
-c | 合并重复并统计个数 |
-d | 显示重复的行 |
-u | 显示唯一的行 |
五、tr
tr命令主要用来改变字符的大小写
六、test
在脚本中,[ ]相当于test命令
6.1 test中的数字对比
参数 | 含义 |
---|---|
= | 等于 |
!= | 不等于 |
-eq | 等于 |
-ne | 不等于 |
-le | 小于等于 |
-lt | 小于 |
-ge | 大于等于 |
-gt | 大于 |
6.2 test中的条件关系
参数 | 含义 |
---|---|
-a | 并且 |
-o | 或者 |
6.3 test中对于空的判断
参数 | 含义 |
---|---|
-n | 检测不为空 |
-z | 检测内容为空 |
6.4 test中对于文件的判定
参数 | 含义 |
---|---|
-ef | 文件节点号是否一致,其中一个文件为另一个文件的硬链接 |
-nt | 文件1是不是比文件2新 |
-ot | 文件1是不是比文件2老 |
-d | 目录 |
-S | 套接字 |
-L | 软链接 |
-e | 检测是否存在 |
-f | 普通文件 |
-b | 块设备 |
-c | 字符设备 |