shell中的基础命令(diff patch cut sort uniq test)

实验环境的配置:

添加一块硬盘:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
目前该主机为双硬盘主机:
在这里插入图片描述
在这里插入图片描述

  • 装虚拟化软件:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 当ks自动安装脚本存在,网络资源存在dhcp存在,安装虚拟机仍然需要重复选择才能进入安装界面:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    进入安装界面重复之前的安装选择操作
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 为了减少重复操作,选用更简便的方法进行安装,进行如下操作:
    在这里插入图片描述
    可用man virt-install 获取帮助
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    执行此命令即可开始自动安装:
    在这里插入图片描述

1.diff 对比不同

  • 输出信息:
    [num1,num2][a|c|d][num3,num4]
num1,num2第一个文件中的行
a添加
c更改
d删除
>第二个文件中的内容
<第一个文件中的内容
num3,num4第二个文件中的行
  • 在westos中编辑hello westos,并将westos中的内容导入westos1中,使用diff westos westos1命令查看二者区别,无任何输出,表示二者并无差异:
    在这里插入图片描述
    在westos1的第二行中添加空格:
    在这里插入图片描述
    在这里插入图片描述
    在westos的第一行中添加空格:
    在这里插入图片描述
    在这里插入图片描述

  • 常用参数:

diff -b忽略空格
diff -B忽略空行
diff -i忽略大小写
diff -c显示文件所有内容并标识不同
diff -r对比目录
diff -u合并输出
  • 忽略空格:
    在这里插入图片描述
  • 忽略空行
    在这里插入图片描述
  • 修改westos1中的hello westos为Hello westos
    在这里插入图片描述
    忽略大小写:
    在这里插入图片描述
  • 显示文件所有内容并标识不同:在这里插入图片描述
  • 对比目录
    在这里插入图片描述
  • 合并输出
    -在这里插入图片描述
  • 合并输出
    其中westos.path为补丁文件,此处需要安装patch软件在这里插入图片描述

2.patch

yum install patch -y
patch 原文件 补丁文件给原文件打补丁
patch -b 原文件 补丁文件备份原文件

在这里插入图片描述

  • 给原文件westos打补丁(未备份原文件,此处打完补丁后westos与westos1完全一致,原本的westos被westos1替换)
    在这里插入图片描述
  • 备份原文件
    备份后westos.orig为原文件的备份
    在这里插入图片描述在这里插入图片描述

3.cut

-d :指定:为分隔符
-f指定显示的列
-c指定截取的字符(用法同-f)
-b指定显示字节
- -complement反选
–output-delimiter=分隔符指定输出的分隔符号

-f与-c用法相同,此处只写了一种

-f 5显示第5列
-f 2 ,5显示第2列和第5列
-f 2-5显示2到5列
-f 5-显示第5列以后
-f -5显示到第5列
cut -d " " -f 2 westos --complement显示除了第二列的内容
  • 以此文件为例:

在这里插入图片描述
在这里插入图片描述

  • 查看第一列:
    在这里插入图片描述
  • 查看第一列到第三列:
    在这里插入图片描述
  • 查看第一列和第三列
    在这里插入图片描述
  • 截取1-4 字符
    在这里插入图片描述
  • 截取1和4字符
    在这里插入图片描述
    在这里插入图片描述
  • 指定空格为分隔符,显示第一列、第二列
    在这里插入图片描述
  • 显示除了第二列以外的内容
    在这里插入图片描述
  • 指定输出的分隔符号为@
    在这里插入图片描述
    指定输出的分隔符号为空格
    在这里插入图片描述
  • 只显示第一个字符
    在这里插入图片描述
  • 只显示第五个字符之后的内容
    在这里插入图片描述
  • 只显示到第五个字符
    在这里插入图片描述

4.sort

sort -n纯数字排序
sort -r倒叙
sort -u去掉重复
sort -o输出到指定文件
sort -t指定分隔符
sort -k指定排序的列
  • 以此文件为例
    在这里插入图片描述
  • 排序(该文件中将第一个数字排序)
    在这里插入图片描述
  • 纯数字排序
    在这里插入图片描述
  • 倒叙
    在这里插入图片描述
  • 去掉重复
    在这里插入图片描述
  • 输出到指定文件file中
    在这里插入图片描述
  • 以此文件为例
    在这里插入图片描述
  • 指定冒号为分隔符,按照第二列顺序排序:在这里插入图片描述
  • 指定冒号为分隔符,按照第二列数字顺序排序:在这里插入图片描述

5.uniq

-c合并重复并统计重复个数
-d显示重复的行
-u显示唯一的行
  • 以如下文件为例:
    在这里插入图片描述
  • 合并重复并统计重复个数
    在这里插入图片描述
  • 显示重复的行
    在这里插入图片描述
  • 显示唯一的行
    在这里插入图片描述

练习:

【1】 ls -l目录,可以显示目录中所有文件的属性,请按照文件大小进行排序并找出做大的2个文件并显示器名称

  • 方法一:
    -在这里插入图片描述
  • 方法二:
    在这里插入图片描述

5.tr

tr ‘a-z’ ‘A-Z’小写转大写
tr ‘A-Z’ ‘a-z’大写转小写

在这里插入图片描述

6.&& 与 | |

&&   符合条件做动作
||   不符合条件做动作

在这里插入图片描述

  • 使用该脚本举例:
    在这里插入图片描述
    在这里插入图片描述

7.test

test = []               ##[] 就相当于test命令
"test $a = $b" = [ "$a" = "$b" ]

在这里插入图片描述
也可以将test替换成“[ ]”
在这里插入图片描述

  • != 不等于
    在这里插入图片描述
  • 条件反选
    在这里插入图片描述
    【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字符设备
  • 文件节点号是否一致
    在这里插入图片描述
  • westos是否比westos1新
    在这里插入图片描述
  • westos是否比westos1老
    在这里插入图片描述
  • /mnt是否为目录
    在这里插入图片描述
  • 套接字在这里插入图片描述
    在这里插入图片描述
  • 软连接
    在这里插入图片描述
  • 文件是否存在
    在这里插入图片描述
  • 块设备
    在这里插入图片描述
  • 普通文件
    在这里插入图片描述
  • 字符设备
    在这里插入图片描述

练习:

编写脚本完成以下条件:

  • file_check.sh在执行时,如果脚本后 未指定检测文件报错“未指定检测文件,请指定”,如果脚本后指定检测文件不存在报错“此文件不存在“,当文件存在时请检测文件类型并显示输出中
  • 在这里插入图片描述
    在这里插入图片描述
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值