shell脚本中常用的命令
发布日期:2022-02-12 16:06:52 浏览次数:5 分类:技术文章

本文共 1984 字,大约阅读时间需要 6 分钟。

diff 命令

diff 命令是用来比较两个文件或目录的不同

在这里插入图片描述

diff [options] target1 target2

diff file1 file2

diff direcory1 directory2

diff 在比较文件过程中结果读取方式
[num1 , num2][a|c|d][num3,num4]
num1,num2 表示在第一个文件中的行数
a 表示添加 ----add
c 表示更改 ----change
d 表示删除 ----delete
< 表示第一个文件中的内容, > 表示第二个文件中的内容
num3,num4 表示在第二个文件中的行数。
2,4c2,4 表示改变第一个文件中的第二行到第四行才能匹配第二个文件中的第二行到第四行。
在这里插入图片描述
在这里插入图片描述
第一个文件删除第四行才能匹配第二个文件的第三行

diff 中常用的参数

在这里插入图片描述

在这里插入图片描述

-b 或 --ignore-space-change 不检查空格字符的不同
在这里插入图片描述
-B 或 --ignore-blank-lines 不检查空白行
在这里插入图片描述

-c 显示全部内文,并标出不同之处

在这里插入图片描述

-i 或 --ignore-case 不检查大小写的不同

在这里插入图片描述

-p :若比较的文件为 C 语言的程序码文件时,显示差异所在的函数名称,与-c显示的结果相同;

-q 或 --brief :仅显示有无差异,不显示详细的信息

在这里插入图片描述

-r 或 --recursive :比较子目录中的文件

在这里插入图片描述

-u 以合并的方式来显示文件内容的不同
在这里插入图片描述

patch命令

用于文件不同文件打补丁

patch [options] file.old file.path -b
在这里插入图片描述

cut命令

cut 命令多用与字符截取

cut -d 指定分隔符
cut -f 1,7|1-7 指定截取的列
cut -c 1,4|1-4 指定截取的字符位置
在这里插入图片描述

从eth0中截出IP地址:

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

sort

多用于字符排序

在这里插入图片描述

sort -n 纯数字排序

在这里插入图片描述
sort -r 倒序(按照第一个字节)
在这里插入图片描述
sort -nr 按数字倒序排列
在这里插入图片描述
sort -u 去掉重复数字
sort -o 输出到指定文件中
在这里插入图片描述
sort -t 指定分隔符
sort -k 指定要排序的列
将/etc下后缀为conf的文件按内存大小从大到小排序,并输出前五个的文件名:
在这里插入图片描述
在这里插入图片描述

uniq

对重复字符做相应的处理

uniq -u 显示唯一的行

在这里插入图片描述
uniq -d 显示重复的行
在这里插入图片描述
uniq -c 每行显示一次并统计重复次数
在这里插入图片描述

&& 和 ||

&& 用来执行条件成立后执行的命令

|| 用来执行条件不成立后执行的命令
例如:
ping -c1 -w1 172.25.254.111 && echo up
ping -c1 -w1 172.25.254.111 || echo up
制作一个脚本,当ping某一个IP地址时,ping通显示up,ping不通显示down:
在这里插入图片描述
在这里插入图片描述

test 命令

在这里插入图片描述

test 命令和 [] 等同
test “$A” == " $B" 等同于 [ " $A" == " $B" ]
[ " $A" = " $B" ]:判断是否A等于B
[ " $A" != " $B" ]:判断是否A不等于B

在这里插入图片描述

[ " $A" -eq " $B" ]:判断是否A等于B

[ " $A" -ne " $B" ]:判断是否A不等于B
[ " $A" -le " $B" ]:判断是否A小于等于B
[ " $A" -lt " $B" ]:判断是否A小于B
[" $A" -ge " $B" ]:判断是否A大于等于B
[" $A" -gt " $B" ]:判断是否A大于B

在这里插入图片描述

[" $A" -ne " $B" -a " $A" -gt " $B" ]:判断是否A等于B且A大于B

[" $A" -ne " $B" -o " $A" -gt " $B" ]:判断是否A等于B或A大于B
在/下的Use%大于30%时报警,并且每一分钟报警一次,报警内容出现在/var/log/messages下:

在这里插入图片描述

[-z " $A" ]:判断A是否为空

[-n " $A" ]:判断A是否不为空
[“file1” -ef “file2” ]:比较file1和file2两个文件是否具有同样的设备号和节点号
[“file1” -nt “file2” ]:判断file1是否建立的晚于file2
[“file1” -ot “file2” ]:判断file1是否建立的早于file2
[-e “file” ]:判断文件是否存在
[-f “file” ]:判断文件是否是普通文件
[-L “file” ]:判断文件是否为软链接
[-S “file” ]:判断文件是否为套接字
[-b “file” ]:判断文件是否为块设备,例如:U盘、硬盘
[-d “file” ]:判断文件是否为目录
[-c “file” ]:判断文件是否为字符设备
在这里插入图片描述

在这里插入图片描述

转载地址:https://blog.csdn.net/weixin_45426401/article/details/99754644 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:数字图像处理系列(四)---图像边缘检测
下一篇:shell中的文本处理

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年04月22日 05时10分29秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章