1.diff 区别
diff分析两个文件,并输出两个文件的不同的行。diff的输出结果表明需要对一个文件做怎样的操作之后才能与第二个文件相匹配。diff并不会改变文件的内容。
用法:
diff [options] files|directorys
输出信息:
[num1,num2][a|c|d][num3,num4]
num1,num2 ##第一个文件中的行
a ##添加
c ##更改
d ##删除
< ##第一个文件中的内容
> ##第二个文件中的内容
num3,num4 ##第二个文件中的行
常用参数:
-b ##忽略空格
-B ##忽略空行
-i ##忽略大小写
-c ##显示文件所有内容并标示不同
-r ##对比目录
-u ##合并输出
2.patch 补丁
dnf install patch -y
需要下载patch工具
patch 原文件 补丁文件
-b ##备份原文件
3.cut 截取
cut
-d : ##指定:为分隔符
-f ##指定显示的列 5第五列| 3,5 3和5列|3-5 3到5列|5- 第五列以后|-5 到第五列
-c ##指定截取的字符(数字用法同-f)
4.sort 排序
sort
-n ##纯数字排序
-r ##倒叙
-u ##去掉重复
-o ##输出到指定文件
-t ##指定分隔符
-k ##指定排序的列
5.uniq
sort
-c #合并重复并统计重复个数
-d #显示重复的行
-u #显示唯一的行
6.tr
tr 'a-z' 'A-Z' ##小写转大写
tr 'A-Z' 'a-z' ##大写转小写
7.test
test = [] ##[] 就相当于test命令
test "$a" = "$b" = [ "$a" = "$b" ]
test数字对比
[ "$a" = "$b" ] && echo yes ||echo no
=
!=
-eq ##等于
-ne ##不等于
-le ##小于等于
-lt ##小于
-ge ##大于等于
-gt ##大于
test的条件关系
-a ##并且
-o ##或者
test对空的判定
-n ##nozero 判定内容不为空
-z ##zero 判定内容为空
当判断变量不为空时,输出no
赋值变量a为1后
当判断变量不为空时,输出yes
test对于文件的判定
ln westos westos.ln #创建出westos的硬链
[ "westos.ln" -ef "westos" ] && echo yes || echo no
-ef ##文件节点号是否一致(硬链)
-nt ##文件1是不是比文件2新
-ot ##文件1是不是比文件2老
[ -d "/root/Desktop" ] && echo yes || echo no
-d ##目录
-S ##套结字
ln -s xxx xxxlink #创建出westos的软链接
-L ##软连接
-e ##是否存在
-f ##普通文件
-b ##快设备
-c ##字符设备
判断节点号是否相同
[ -d “/root/Desktop” ] && echo yes || echo no 判断是不是目录
判断是否存在
8.&& ||
&& 符合条件作动作
|| 不符合条件作动作
[ "$a" = "$b" ] && echo yes ||echo no