Shell中常用的语句
| 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中常用的语句的更多相关文章
- shell中常用的特殊符号
在shell中常用的特殊符号罗列如下: # ; ;; . , / \ 'string'| ! $ ${} $? $$ $* "string"* ** ? : ^ $# $@ `co ...
- mysql中常用的语句整理
mysql中常用的语句: 1:创建带自增长的主键的表 DROP TABLE IF EXISTS user_login ; CREATE TABLE user_login ( user_id INT ...
- linux Shell中常用的条件判断
linux Shell中常用的条件判断 -b file 若文件存在且是一个块特殊文件,则为真 -c file 若文件存在且是一个字符特殊文件,则为真 -d ...
- shell中的比较语句
Linux比较字符串.判断文件是否存在及是否可读等,通常用"[]"来表示条件测试. 注意:这里的空格很重要.要确保方括号的空格.笔者就曾因为空格缺少或位置不对,而浪费好多宝贵的时间 ...
- 【 PostgreSQL】工作中常用SQL语句干货
接触gp数据库近一年的时间,语法上和其他数据库还是有些许不同,工作中常用的操作语句分享给大家! -- 建表语句 create table ods.ods_b_bill_m ( acct_month t ...
- Shell中的循环语句实例
1.for循环语句实例1.1 最基本的for循环 #!/bin/bash for x in one two three four do echo number $x done 注:" ...
- shell中常用的命令方法
<1>Linux Shell 脚本中字符串的连接方法 [root@localhost company]# var1=/etc/[root@localhost company]# var3= ...
- shell中的循环语句
for语法格式 for var in list;do commands done 其中list可以包含: 1) 直接写 for alpha in a b c d;do echo $alpha done ...
- Oracle中常用的语句
1.查询锁表 SELECT a.object_name,b.session_id,c.serial#,c.program,c.username,c.command,c.machine,c.lockwa ...
随机推荐
- vue+element实现分页--之--前端分页
效果图: 访问的数据量小,一次返回所有数据,再次利用elementUI-Table 和el-pagination组件进行展示,关键点事数据的筛选 官网的完整案例 <div class=" ...
- JAVA,IDEA下的包机制
IDEA下的包机制 在实际开发中,大型系统往往需要多人合作完成,每个程序员都要命名多个类与接口等类型,难免会定义重复的类与接口.为了避免名字冲突,java提供了包机制只要包名不同,即使类名相同,也能相 ...
- Redis(6379)未授权访问
环境搭建 打开kali终端 输入命令 wget http://download.redis.io/releases/redis-3.2.0.tar.gz tar xzf redis-3.2.0.tar ...
- 🔥 LeetCode 热题 HOT 100(31-40)
75. 颜色分类 思路:将 2 往后放,0 往前放,剩余的1自然就放好了. 使用双指针:left.right 分别指向待插入的 0 和 2 的位置,初始 left 指向数组头,right 指向数组尾部 ...
- 手撸一个SpringBoot-Starter
1. 简介 通过了解SpringBoot的原理后,我们可以手撸一个spring-boot-starter来加深理解. 1.1 什么是starter spring官网解释 starters是一组方便的依 ...
- 学习Android Jetpack? 入门教程和进阶实战这里全都有!
前言 2018年谷歌I/O,Jetpack横空出世,官方介绍如下: Jetpack 是一套库.工具和指南,可帮助开发者更轻松地编写优质应用.这些组件可帮助您遵循最佳做法.让您摆脱编写样板代码的工作并简 ...
- 揭秘阿里云 RTS SDK 是如何实现直播降低延迟和卡顿
作者:予涛 途坦 这个夏天,没什么能够比一场酣畅淋漓的奥运比赛来的过瘾.但是,在视频平台直播观看比赛也有痛点:"卡顿" 和 "延时".受限于不同地域.复杂的网络 ...
- Windows根据端口号查找对应的进程和服务
需求 1,我们在Win10安装一些Web服务时,会发现默认端口被占用,比如443端口被占用,808端口被占用,那么如何找出占用这些默认端口的进程和对应的服务呢? 2,系统安装完成后,会有一些应用对外开 ...
- 建立局域网内使用的CentOS7源
建立局域网内使用的CentOS7源 by 无若 1. 在CentOS下建立匿名的FTP访问服务 CentOS 7下安装配置pure-ftpd,并使用匿名用户登录 Pure-FTPd是Linux上 ...
- 在STM32F401上移植uC/OS的一个小问题 [原创]
STM32F401xx是意法半导体新推出的Cortex-M4内核的MCU,相较于已经非常流行的STM32F407xx和STM32F427xx等相同内核的MCU而言,其特点是功耗仅为128uA/MHz, ...