目录
一. diff
1. 作用
Linux中Diff命令的功能为逐行比较两个文本文件,列出其不同之处。它对给出的文件进行系统的检查,并显示出两个文件中所有不同的行,不要求事先对文件进行排序。
2. 用法
diff [options] files|directorys

3. 输出信息
[num1,num2][a|c|d][num3,num4]
num1,num2 ##第一个文件中的行
a ##添加
c ##更改
d ##删除
< ##第一个文件中的内容
> ##第二个文件中的内容
num3,num4 ##第二个文件中的行
4. 常用参数
-b ##忽略空格
-B ##忽略空行
-i ##忽略大小写
-c ##显示文件所有内容并标示不同
-r ##对比目录
-u ##合并输出

二. patch
1. 简介
patch命令被用于为开放源代码软件安装补丁程序。让用户利用设置修补文件的方式,修改,更新原始文件。如果一次仅修改一个文件,可直接在命令列中下达指令依序执行。如果配合修补文件的方式则能一次修补大批文件,这也是Linux系统核心的升级方法之一。
2. 安装

3. 用法
patch 原文件 布丁文件
-b ##备份原文件

三. cut
1. 简介
cut命令用来显示行中的指定部分,删除文件中指定字段。
2. 功能
一是用来显示文件的内容,它依次读取由参数file所指 明的文件,将它们的内容输出到标准输出上。
二是连接两个或多个文件,将几个内容合并起来,然后通过输出重定向符“>”的作用,将它们放入一个文件中。
3. 用法
cut
-d : ##指定:为分隔符
-f ##指定显示的列 5第五列 | 3,5 3和5列 | 3-5 3到5列 | 5- 第五列以后 | -5 到第五列
-c ##指定截取的字符(数字用法同-f)
学员命令测试:
ifconfig 网卡 可以显示此网卡的信息
显示信息中包含此网卡使用的ip地址
请用命令过滤此ip并在输出时只显示ip其他信息不显示
四. sort
1. 简介
sort命令,它将文件进行排序,并将排序结果标准输出。sort命令既可以从特定的文件,也可以从stdin中获取输入。
2. 用法
-n##纯数字排序
-r##倒叙
-u##去掉重复
-o##输出到指定文件
-t##指定分隔符
-k##指定排序的列
练习:
ls -l 目录 可以显示目录中所有文件案的属性
清按照文件大小进行排序并找出最大的2个文件并显示其名称
五. uniq
1. 简介
uniq命令用于报告或忽略文件中的重复行,一般与sort命令结合使用。
2. 用法
-c#合并重复并统计重复个数
-d#显示重复的行
-n#显示唯一的行
六. tr
1. 大小写转换
tr 'a-z' 'A-Z' ##小写转大写
tr 'A-Z' 'a-z' ##大写转小写
2. 删除字符
3. 压缩字符
4. tr可以使用的字符类
[:alnum:]:字母和数字
[:alpha:]:字母
[:cntrl:]:控制(非打印)字符
[:digit:]:数字
[:graph:]:图形字符
[:lower:]:小写字母
[:print:]:可打印字符
[:punct:]:标点符号
[:space:]:空白字符
[:upper:]:大写字母
[:xdigit:]:十六进制字符
## 使用方式
tr '[:upper:]' '[:digit:]'
七. test
test = [] ##[] 就相当于test命令
"test $a = $b" = [ "$a" = "$b" ]
1. test数字对比
=
!=
-eq ##等于
-ne ##不等于
-le ##小于等于
-lt ##小于
-ge ##大于等于
-gt ##大于
2. test的条件关系
-a##并且
-o##或者
3. test对空的判定
-n ##nozero 判定内容不为空
-z ##zero判定内容为空
4. test对于文件的判定
-ef ##文件节点号是否一致(硬链)
-nt ##文件1是不是比文件2新
-ot ##文件1是不是比文件2老
-d ##目录
-S ##套结字
-L ##软连接
-e ##存在
-f ##普通文件
-b ##快设备
-c ##字符设备
学员检测
编写脚本完成以下条件
file_check.sh 在执行时
如果脚本后未指定检测文件报错“未指定检测文件,请指定”
如果脚本后指定文件不存在报错“此文件不存在”
当文件存在时请检测文件类型并显示到输出中
#!/bin/bash
[ -z $1 ] && {
echo "未指定检测文件,请指定"
} || {
[ ! -e $1 ] && {
echo "此文件不存在,请重新输入文件"
} || {
[ -d $1 ] && {
echo "目录"
} || {
[ -S $1 ] && {
echo "套接字"
} || {
[ -c $1 ] && {
echo "字符设备"
} || {
[ -b $1 ] && {
echo "块设备"
} || {
[ -L $1 ] && {
echo "软连接"
} || {
[ -f $1 ] && {
echo "普通文件"
} || {
echo "未知文件类型"
}
}
}
}
}
}
}
}
八. && ||
&&符合条件作动作
||不符合条件作动作