exit 完全中断脚本的执行
break 中断脚本的循环,但是会执行循环外的语句
continue 跳出本次循环,进行下一次循环

进一步了解三者的区别,有如下实验:


执行该脚本:
脚本正常运行情况:


1.格式
for NUM in 1 2 3
for NUM in {1..3}
for NUM
in 或者 for NUM in
do
done
2.{1..10}与 `seq 1 10`

{1..10}是1到10,`seq 1 10 `也是1到10,但是seq可以设定步长
例如:`seq 1
2 10` 步长为2从1到10

有如下实验:



执行该脚本:



执行该脚本:

编写脚本检测ip是否存在
建立一个数据库,编写脚本对所有数据库进行备份操作,每个数据库备份一个文件,以.sql结尾备份到/mnt/mysql_dump

编写脚本:



执行脚本:

1.语句格式

2.编写脚本,监控根分区的使用情况,当达到80%时给root发送邮件
查看根分区的使用情况





3脚本编写,监控根分区的使用情况,达到80%时自动弹出至当前shell



脚本的执行:

1.if语句的格式

2.脚本练习 email格式
<1>利用if语句编写脚本,判断文件类型

执行该脚本:


<2>编写脚本按要求用文件建立用户

1.文件数量不对时报错

2.文件不存在报错
3,文件行数差异报错

4.用户存在时显示用户存在,但是不修改用户密码

5.用户不存在时建立用户并设定密码



脚本的执行:




重新编辑用户文件,再次执行


<3>编写脚本输入cat 输出dog,输入dog输出cat



[ -eq ] 判断数值相等 [=] 字符相同
执行该脚本:

1.语句格式

2.脚本编写
<1>.编写脚本输入cat
输出dog,输入dog输出cat



脚本的执行:只进行一词匹配立即找到结果,相对if语句效率高

1.基础信息

expect 是自动应答命令用于交互式命令的自动执行
send发送问题答案给交互命令
“\r”表示回车
exp_continue 表示当问题不存在时继续回答下面的问题
expect eof 表示问题回答完毕退出 expect 环境
interact 表示问题回答完毕留在交互界面
set NAME [ lindex $argv n ] 定义变量

需要安装expect才可以使用该语句

2.编写自动应答脚本



执行脚本:


自动应答脚本的另一种写法



执行脚本:


3.编写脚本,自动连接其他主机



执行脚本:

Shell中常用的语句的更多相关文章

  1. shell中常用的特殊符号

    在shell中常用的特殊符号罗列如下: # ; ;; . , / \ 'string'| ! $ ${} $? $$ $* "string"* ** ? : ^ $# $@ `co ...

  2. mysql中常用的语句整理

    mysql中常用的语句: 1:创建带自增长的主键的表 DROP TABLE IF EXISTS user_login ; CREATE TABLE user_login (   user_id INT ...

  3. linux Shell中常用的条件判断

    linux Shell中常用的条件判断 -b file            若文件存在且是一个块特殊文件,则为真 -c file            若文件存在且是一个字符特殊文件,则为真 -d ...

  4. shell中的比较语句

    Linux比较字符串.判断文件是否存在及是否可读等,通常用"[]"来表示条件测试. 注意:这里的空格很重要.要确保方括号的空格.笔者就曾因为空格缺少或位置不对,而浪费好多宝贵的时间 ...

  5. 【 PostgreSQL】工作中常用SQL语句干货

    接触gp数据库近一年的时间,语法上和其他数据库还是有些许不同,工作中常用的操作语句分享给大家! -- 建表语句 create table ods.ods_b_bill_m ( acct_month t ...

  6. Shell中的循环语句实例

    1.for循环语句实例1.1 最基本的for循环 #!/bin/bash for x in one two three four do     echo number $x done 注:" ...

  7. shell中常用的命令方法

    <1>Linux Shell 脚本中字符串的连接方法 [root@localhost company]# var1=/etc/[root@localhost company]# var3= ...

  8. shell中的循环语句

    for语法格式 for var in list;do commands done 其中list可以包含: 1) 直接写 for alpha in a b c d;do echo $alpha done ...

  9. Oracle中常用的语句

    1.查询锁表 SELECT a.object_name,b.session_id,c.serial#,c.program,c.username,c.command,c.machine,c.lockwa ...

随机推荐

  1. vue+element实现分页--之--前端分页

    效果图: 访问的数据量小,一次返回所有数据,再次利用elementUI-Table 和el-pagination组件进行展示,关键点事数据的筛选 官网的完整案例 <div class=" ...

  2. JAVA,IDEA下的包机制

    IDEA下的包机制 在实际开发中,大型系统往往需要多人合作完成,每个程序员都要命名多个类与接口等类型,难免会定义重复的类与接口.为了避免名字冲突,java提供了包机制只要包名不同,即使类名相同,也能相 ...

  3. Redis(6379)未授权访问

    环境搭建 打开kali终端 输入命令 wget http://download.redis.io/releases/redis-3.2.0.tar.gz tar xzf redis-3.2.0.tar ...

  4. 🔥 LeetCode 热题 HOT 100(31-40)

    75. 颜色分类 思路:将 2 往后放,0 往前放,剩余的1自然就放好了. 使用双指针:left.right 分别指向待插入的 0 和 2 的位置,初始 left 指向数组头,right 指向数组尾部 ...

  5. 手撸一个SpringBoot-Starter

    1. 简介 通过了解SpringBoot的原理后,我们可以手撸一个spring-boot-starter来加深理解. 1.1 什么是starter spring官网解释 starters是一组方便的依 ...

  6. 学习Android Jetpack? 入门教程和进阶实战这里全都有!

    前言 2018年谷歌I/O,Jetpack横空出世,官方介绍如下: Jetpack 是一套库.工具和指南,可帮助开发者更轻松地编写优质应用.这些组件可帮助您遵循最佳做法.让您摆脱编写样板代码的工作并简 ...

  7. 揭秘阿里云 RTS SDK 是如何实现直播降低延迟和卡顿

    作者:予涛 途坦 这个夏天,没什么能够比一场酣畅淋漓的奥运比赛来的过瘾.但是,在视频平台直播观看比赛也有痛点:"卡顿" 和 "延时".受限于不同地域.复杂的网络 ...

  8. Windows根据端口号查找对应的进程和服务

    需求 1,我们在Win10安装一些Web服务时,会发现默认端口被占用,比如443端口被占用,808端口被占用,那么如何找出占用这些默认端口的进程和对应的服务呢? 2,系统安装完成后,会有一些应用对外开 ...

  9. 建立局域网内使用的CentOS7源

    建立局域网内使用的CentOS7源 by 无若    1. 在CentOS下建立匿名的FTP访问服务 CentOS 7下安装配置pure-ftpd,并使用匿名用户登录 Pure-FTPd是Linux上 ...

  10. 在STM32F401上移植uC/OS的一个小问题 [原创]

    STM32F401xx是意法半导体新推出的Cortex-M4内核的MCU,相较于已经非常流行的STM32F407xx和STM32F427xx等相同内核的MCU而言,其特点是功耗仅为128uA/MHz, ...