echo -e "\n"
echo换行
一、diff
用法:
diff 「options」files|directorys
输出信息:
「num1,num2」「a|c|d」[num3,num4]
num1,num2
第一个文件中的行
a
添加
c
更改
d
删除
<
第一个文件中的内容
>
第二个文件中的内容
num3,num4
第二个文件中的行
diff westos lee
[root@node126 777]# cat westos
2021
2022
2023
[root@node126 777]# cat lee
2021
2023
[root@node126 777]# diff westos lee
2d1
< 2022
[root@node126 777]#
[root@node126 777]# cat -n lee
1 2021
2 2023
[root@node126 777]# cat -n westos
1 2021
2 2022
3 2023
4 2024
5 2025
6 2026
7 2027
8 2028
9 2029
[root@node126 777]# diff lee westos
1a2
> 2022
2a4,9
> 2024
> 2025
> 2026
> 2027
> 2028
> 2029
[root@node126 777]#
常用参数:
diff -b westos lee
忽略空格(只能在句尾)
diff -B lee westos
忽略空行
diff -i lee westos
忽略大小写
diff -c lee westos
显示文件所有内容并标示不同
diff -r
对比目录

diff -u westos lee
合并输出
二、patch
patch 原文件 布丁文件
patch -b
备份原文件
三、cut
列处理命令
cut -d
指定:为分隔符
cut -f
指定显示的列 5
第五列 | 3,5
三和五列 |3-5
3到5列|5-
第五列以后|-5
到第五列
cut -c
指定截取的字符(数字用法同-f)
四、sort
sort filename
首位排序
sort -n
纯数字排序
sort -r
倒序
sort -u
去掉重复
sort -o
输出到指定文件
sort -t
指定分符
sort -k
指定排序的列
五、uniq
uniq -c
合并(删除)重复并统计(count)重复个数
uniq -c处理的文件需先排序
[root@node126 logs]# cat test2
172.25.254.26
172.25.254.26
172.25.254.26
192.168.1.26
192.168.1.26
192.168.1.26
192.168.1.26
192.168.1.26
172.25.254.26
172.25.254.26
172.25.254.26
192.168.1.26
192.168.1.26
[root@node126 logs]# uniq -c test2
#test2未排序,按段显示统计
3 172.25.254.26
5 192.168.1.26
3 172.25.254.26
2 192.168.1.26
[root@node126 logs]# sort test2| uniq -c
# 排好序后,统计显示
6 172.25.254.26
7 192.168.1.26
[root@node126 logs]#
uniq -c
可统计空格
[root@node126 logs]# sort test2| uniq -c
2
6 172.25.254.26
7 192.168.1.26
[root@node126 logs]#
uniq -d
显示重复的行
uniq -u
显示唯一的行
六、tr
tr ‘a-z’ ‘A-Z’ 小写转大写
tr ‘A-Z’ ‘a-z’ 大写转小写
七、test
test =[]
[]就相当于test命令
“test $a = b ” = [ " b” = [ " b”=["a" = “$b” ]
test 数字对比
=
!=
-eq 等于
-ne 不等于
-le 小于等于
-lt 小于
-ge 大于等于
-gt 大于
test的条件关系
-a 并且
-o 或者
test 对空的判定
-n nozero 判定内容不为空
-z zero 判定内容为空
执行下列脚本来判断用户类型
user_check.sh 用户
用户类型为
super user
system user
common user
test对于文件的判定
-ef 文件节点号是否一致
-nt 文件1是不比文件2新
-ot 文件1是不比文件2老
-d 目录
-S 套接字
-L 软链接
-e 存在
-f 普通文件
-b 快设备
-c 字符设备
编写脚本完成以下条件
file_check.sh 在执行时
如果脚本后未指定检测文件报错“未指定检测文件,请指定”
如果脚本后指定文件不存在报错“此文件不存在”
当文件存在时请检测文件类型并显示到输出中
八、&& ||
&& 符合条件做动作
|| 不符合条件做动作
学员命令测试:
1.ifconfig网卡,可以显示此网卡的信息
显示信息中包含此网卡使用的ip地址
请用命令过滤此ip并在输出时只显示ip,其他信息不显示
2.找出能登陆系统用户中UID 最大的用户,并显示其名称