当前位置:网站首页>shell中常用的基础命令

shell中常用的基础命令

2022-08-02 03:35:00 linyxg

一. diff命令

作用:对比文件不同和文件补丁管理

1.语法格式 :diff [options] files|dirtorys
输出信息: [ num1 , num2 ][ a | c | d ][ num3 , num4 ]

输出信息解释
num1 , num2第一个文件中的行
a添加
c更改
d删除
<第一个文件中的内容
>第二个文件中的内容
num3 , num4第二个文件中的行

在这里插入图片描述

2.diff命令常用参数

常用参数作用
-b忽略空格
-B忽略空行
-i忽略大小写
-c显示文件所有内容并标示不同
-r对比目录
-u合并输出

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

3.diff 生成补丁
在这里插入图片描述

二、patch打补丁

作用:打补丁,用补丁文件更新就文件

1 .dnf install patch 安装patch补丁软件

2 .语法格式: patch 原文件 补丁文件
   -b 备份原文件
在这里插入图片描述

三、cut截取命令

作用:截取并显示指定的列

  • 常用参数
-f显示指定的列
-d指定分割符
-c指定截取的字符串(数字的用法同 -f )

在这里插入图片描述

四、sort

作用:将文件内容按照指定的规律进行排序

  • 常用参数
-n纯属子排序
-r倒叙
-u去掉重复
-o输出到指定文件
-t指定分割符
-k指定排序的列

在这里插入图片描述

在这里插入图片描述

五、uniq

作用:冗余统计

  • 常用参数
-d显示重复的行
-c合并重复并统计重复个数
-u显示唯一的行

在这里插入图片描述

练习:只获取主机的ip地址,不显示其他任何信息

ifconfig命令可以显示主机的网卡信息,ifconfig+网卡名称可以只显示此网卡的信息,网卡信息里包含了ip地址等信息。
1、ifconfig ens3 | head -n 2 |tail -n1|cut -d " " -f 10
2、ifconfig ens3 |awk ‘/inet>/{print $2}’
3、ifconfig ens3| head -n2|tail -n1 |cut -c 14-26
在这里插入图片描述

六、tr 字符写转换命令

作用:字符大小写转换,还适用于单个字符的转换

1.大小写转换

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

在这里插入图片描述
2. 单个字符或字符串的转换
注意:将要转换的字符的长度只能与被转换的字符长度相等
在这里插入图片描述

七、条件判断符号

作用:判断条件是否成立,可以优化输出

&&条件成功则执行动作
||条件错误则执行其他的动作

八、条件检测命令test

  • test数字对比 ,可用符号“[ ]”代替 " test "
参数符号含义
-a并且(全真为真)
-o或者(一真为真)
-z
-n非空
-ge>=大于等于
-gt>大于
-lt<小于
-le<=小于等于
-eq=等于
-ne!=不等于

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

  • test对于文件的判定
参数含义
-ef文件节点号是否一致
-nt文件1比文件2早建立
-ot文件1建立时间比文件2晚
-d是目录
-S是套接字文件
-L是软链接
-e文件或目录存在
-f是普通文件
-b是块设备文件
-c是字符设备文件

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

练习:test脚本测试

题目:编写脚本file.check.sh 。执行时,若脚本后面未指定检测文件,报错“未指定检测文件,请指定”,若脚本后指定的文件不存在时报错,“此文件不存在”,若文件存在请检测文件类型并输出。
:软连接和文件,检测出来都是文件类型,所以先检测软连接,再检测文件。
在这里插入图片描述
测试
在这里插入图片描述

原网站

版权声明
本文为[linyxg]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_45760327/article/details/114857329