shell脚本中的常见命令

1、比较两者合不同的:diff

用法:diff [options] file1|directorys1 file2|directorys2

输出信息说明:

[ num1,num2 ] [ a | d | c ] [ num3,num4 ]
信息内容说明
num1,num2第一个文件的行数
a添加信息
d删除信息
c改变信息
<第一个文件的内容
>第二个文件的内容
num3,num4第二个文件的行数

常见参数:

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

【注】1、vimdiff可直接将对比的两文件打卡,并显示不同;

           2、-u 两参数对比时,模版为后面的文件

命令演示:

初始文件配置:

图 1 实验文件的建立

-b

图 2 参数b

-B

图 3 参数B

-i -c

图 4 参数 i c

 -r -u

图 5 参数 -r -u

2、补定生成:patch

用法:patch  [options]  原文件 补丁文件

常用参数:-b 打补丁时,保存原文件

命令演示:

图 6 打补丁
图 7 参数 -b

【注】1、patch 命令需要安装包,进行安装使用。

           2、补丁只能打在对比的文件上,不能打在模版文件上。

3、内容查看:cut

用法:cut [options] file1

参数:

参数含义
-d指定分隔符
-f指定显示的行
-c指定截取的字符

【注】行和字符的指定:n 第n行;n-m 第n行到第m行;n,m第n行和第m行;n- 第n行以后;-n 第一行到第n行。

命令演示:

实验素材:

图 8 实验素材

 参数:

-d - f

图 9 参数 -d -f
图 10 参数-c

 

4、内容排序:sort

用法:sort [options] file

参数:

参数含义
-n正向排序
-r反向排序
-u (uniq)-c统计每个数字出现的个数
-d显示重复的数
-u显示不重复的数
-o指定输出文件
-t指定分格符
-k指定排序的列

命令演示:

实验素材建立:

图 11 建立实验素材

 实验参数:

-n -r

图 12 参数 -n -r

-u

图 13 参数 -u

 -t -k

图 14 参数 -t -k

 说明:此时实验素材进行的转化,随意添加了一列。

补充:u=uniq

参数:

参数含义
-c合并重复并统计个数
-d显示重复的行
-u显示唯一的行

参数演示:

图 15 参数演示

5、字符大小写转化:tr

用法:tr 'a-z' 'A-Z' 将小写转化为大写

           tr 'A-Z' 'a-z'  将大写转化为小写

命令演示:

图 16 tr

6、参数对比:test([   ])

6.1 数字对比:

用法:"test $n = $m " 或 [ "$n" [options] "$m"]

参数:

判断条件含义
=(-eq)等于
!= (-ne)不等于
-le小于等于
-lt小于
-ge大于等于
-gt大于

 命令演示:

实验素材建立:

图 17 素材建立

说明:此时变量存在内存中,为全局变量

参数演示:

图 18 参数演示

6.2 两者的关系:

参数关系
-a
-o

命令演示:

图 19 参数 a o

6.3 空的判定:

参数关系
-z
-n不为零

 命令演示:

图 20 参数 z n

6.4 文件的判定:

参数含义
-ef硬连接
-nt新文件
-ot旧文件
-d目录
-S套接字
-L软连接
-e存在
-f普通文件
-b块设备
-c字符设备

命令演示:

实验素材建立:

图 21 实验素材建立

 参数测试:

图 22 参数演示

 

图 23 参数演示

说明:

           块设备:块设备是i/o设备中的一类,是将信息存储在固定大小的块中,数据块的大小通常在512字节到32768字节之间。块设备的基本特征是每个块都能独立于其它块而读写。磁盘是最常见的块设备;

           字符设备:字符设备是指在I/O传输过程中以字符为单位进行传输的设备,例如键盘,打印机等。

           硬连接:一个文件的一个或多个文件名。硬链接只能引用同一文件系统中的文件。它引用的是文件在文件系统中的物理索引(也称为inode)。当移动或删除原始文件时,硬链接不会被破坏。

           软连接:软链接又叫符号连接,这个文件包含了另一个文件的路径名。可以是任意文件或目录,可以链接不同文件系统的文件。软链接文件只是其源文件的一个标记,当删除了源文件后,链接文件不能独立存在,虽然仍保留文件名,但却不能查看软链接文件的内容。

           套接字:套接字是一种通信机制,凭借这种机制,客户/服务器系统的开发工作既可以在本地单机上进行,也可以跨网络进行,Linux所提供的功能(如打印服 务,ftp等)通常都是通过套接字来进行通信的。

【注】1、上述表达式中,表示符合条件的动作:&&,不符合条件的动作:||。

           2、文件比较时,后面的为模板。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值