Linux中的脚本编辑基础

一、shell 的基本知识

1.shell 的定义

shell 是操作系统中的一个软件,它包在linux 内核的外面,为用户和内核之间的交互提供了一个接口,系统中的命令用shell 去解释,shell 接受系统回应的输出并显示到屏幕中

2.shell 脚本的定义

脚本是一种解释型语言,用shell脚本保存执行动作,用脚本判定命令的执行条件,用脚本来实现动作的批量执行。

3.Unix系统中常见的shell有:sh、csh、ksh、tcsh、bash

二、shell 的应用

1.shell 脚本的创建

call 表示调用     以下设置只针对新脚本有用

测试:

2.比较两个文件或目录的不同 (diff )

只显示两个文件的不同之处

a  表示添加 add

c 表示更改 change

d 表示删除 delete

< 表示第一个文件中的内容

>表示第二个文件中的内容

创建两个不同的文件

在第一个文件的第一行添加123 才能匹配第二个文件内容

vim file

两个文件的第二行不同

将第一个文件的第二行更改为123后才能与第二个文件相匹配

3.patch 补丁

安装 patch

yum install patch -y

整合两个不同的文件,生成补丁

生成补丁文件 file.path

使用补丁 (不备份)

-b可以备份file 的原始文件

4.diff中使用的参数

-b 不检测空格字符的不同

-B不检测空格行的不同

-c 显示全部内容,并标明不同之处

-i 不检测大小写的不同

-q仅显示有无差异,不显示详细信息

-r 比较子目录中文件

5.cut 的使用

cut 命令多用于字符截取

-d 指定分隔符         -f 指定截取的列

截取1到3列

截取1列和3列

-c 指定截取的字符位置      截取第二个和第三个字符

截取第二个到第五个字符

6.sort命令的使用  多用于字符的排序

-o 表示输出到指定文件

对第一个字符排序

-n 表示纯字数排序

-r 倒序

-u 去掉重复数字

排序并统计文件内容重复次数

-t 指定分隔符       -k 指定要排序的列

uniq -c 每行显示一次并统计重复次数

uniq -d  显示重复的行

uniq -u 显示唯一的行

三、&&和||

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

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

编写脚本  若ip可以ping通,则显示 yes  若不通,则显示no

四、test 命令

test 命令和[ ]等同   如:test "$A" ="$B"  等同 ["$A"="$B"]

如果 a=b 则显示yes 如果不是显示no

如果a=b 则显示yes 如果不是显示no

!= 表示为 不等于 如果a不等于b则显示yes,如果不是则显示no

-eq 表示等于

-ne 表示不等于

-gt 表示大于

-lt 表示小于

-le 小于等于

-ge 大于等于

a 大于0且小于10

-z 表示为空

-n 表示不为空

-ef 判断节点相不相等

ln 制作链接

查看节点

file 比 file1 创建的早

file 比 file1 创建的晚

-e 判断文件是否存在

-d 判断是不是目录

-f 判断是否为普通文件

-L 判断是否为链接

-b 块设备

-S 判断是否为套结字

-c 字符设备

编写脚本,判断文件是否存在,若存在,判断它是什么类型的文件

测试

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

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值