linux脚本语句,LINUX shell 脚本语句
LINUX中shell脚本中语句的基本用法
一、if ...then...fi
if [ 条件判断一 ] && (||) [ 条件判断二 ]; then <==if 是起始,后面可以接若干个判断式,使用 && 或 || 执行判断
elif [ 条件判断三 ] && (||) [ 条件判断四 ]; then <== 第二段判断,如果第一段不符合要求就转到此搜寻条件,执行第二段程序
else <==当前两段都不符合时,就执行这段内容
fi <== 结束 if then 的条件判断
上面的意思是:中括号[] 里的是条件表达式,如果是复合条件判断(如若A 及B 则C 之类的逻辑判断),那么就需要在两个中括号之间加&&(and)或| | (or )这样的逻辑运算符。如果是多重选择,那么需要以elif(可选的,需要时才加上)新增另一个条件;如果所有的条件都不适用,则使用else (可选的)执行最后的内容。
如:
#!/bin/bash
# This program is used to study if then
# 2013/12/30
echo "Press y to continue"
read yn
if [ "$yn" = "y" ] || [ "$yn" = "Y" ]; then
echo "script is running..."
elif [ "$yn" = "" ]; then
echo "You must input parameters "
else
echo "STOP!"
fi
二、case ... esac
case 种类方式(string) in <== 开始阶段,种类方式可分成两种类型, 通常使用 $1 这种直接输入类型
种类方式一)
程序执行段
;; <==种类方式一的结束符号
种类方式二)
程序执行段
;;
*)
echo "Usage: { 种类方式一|种类方式二}" <==列出可以利用的参数值
exit 1
esac <== case结束处
种类方式(string)的格式主要有两种:
· 直接输入:就是以“执行文件 + string ”的方式执行(/etc/rc.d/init.d 里的基本设定方式),string可以直接写成$1(在执行文件后直接加入第一个参数)。
· 交 互 式:就是由屏幕输出可能的项,然后让用户输入,通常必须配合read variable,然后string写成$variable 的格式。
如(交互式):
#!/bin/bash
# program: Using case mode
# 2013/12/30
echo "Press your select one, two, three"
read number
case $number in
one)
echo "your choice is one"
;;
two)
echo "your choice is two"
;;
three)
echo "your choice is three"
;;
*)
echo "Usage {one|two|three}"
exit 1
esac
三、循环语句
1、for (( 条件1; 条件2; 条件3)) ---已经知道运行次数
如:
#!/bin/bash
# Using for and loop
# 2013/12/30
declare -i s # <==变量声明
for (( i=1; i<=100; i=i+1 ))
do
s=s+i
done
echo "The count is ==> $s"
2、for variable in variable1 variable2 .....
如:
#!/bin/bash
# using for...do ....done
# 2013/12/30
LIST="a aa aaa aaaa aaaaa"
for i in $LIST
do
echo $i
done
脚本执行结果如下:
a
aa
aaa
aaaa
aaaaa
3、while [ condition1 ] && { | | } [ condition2 ] ... --先判断条件
如:
#!/bin/bash
# Using while and loop
# 2013/12/30
declare -i i
declare -i s
while [ "$i" != "101" ]
do
s=s+i
i=i+1
done
echo "The count is ==> $s"
4、until [ condition1 ] && { | | } [ condition2 ] ... --先做后判断条件
如:
#!/bin/bash # Using until and loop # 2013/12/30 declare -i i declare -i s until [ "$i" = "101" ] do s=s+i i=i+1 done echo "The count is ==> $s"
linux脚本语句,LINUX shell 脚本语句相关推荐
- Linux命令行与shell脚本编程大全:第2版
<Linux命令行与shell脚本编程大全:第2版> 基本信息 作者: (美)布卢姆(Blum,R.) 布雷斯纳汉(Bresnahan.C.) [作译者介绍] 译者: 武海峰 丛书名: 图 ...
- linux脚本编写规则,shell脚本编写守则
现在centos7中使用的是bash软件,通过以下命令可以查看bash版本: [root@localhost ~]# cat /etc/redhat-release #查看系统的版本 CentOS L ...
- 《Linux命令行与Shell脚本编程大全第2版.布卢姆》pdf
下载地址:网盘下载 内容简介 · · · · · · 本书是一本关于Linux 命令行与shell 脚本编程的全面教程.全书分为四部分:第一部分介绍Linuxshell 命令行:第二部分介绍shel ...
- 《Linux命令行与shell脚本大全》笔记
初识Linux Shell 什么是Linux Linux可划分为以下四部分: Linux内核 GNU工具 图形化桌面环境 应用软件 深入探究Linux内核 内核主要负责以下四种功能: 系统内存管理 软 ...
- linux运维自动化脚本,linux运维自动化shell脚本小工具
linux运维shell 脚本小工具,如要分享此文章,请注明文章出处,以下脚本仅供参考,若放置在服务器上出错,后果请自负 1.检测cpu剩余百分比 #!/bin/bash #Inspect CPU # ...
- 《linux命令行与shell脚本编程大全》第三版 - 核心笔记(3/4):函数与图形化脚本
<linux命令行与shell脚本编程大全> 全书4部分: ☆ [1]linux命令行(1-10章) ☆ [2]shell脚本编程基础(11-16章) ☆ [3]高级shell脚本编程(1 ...
- linux 用shell脚本文件,Linux必须掌握的shell脚本基础
1. shell 基本语法 shell: shell 是一个命令解释器,它在操作系统的最外层,负责直接与用户进行对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕反馈给用 ...
- 《Linux命令行与shell脚本编程大全》笔记一
第一章 初始 Linux shell Linux内核主要四种功能: 1.系统内存管理 2.软件程序管理 3.硬件设备管理 4.文件系统管理 shell:交互工具. 第三章 基本的bash shell ...
- 【Linux】《Linux命令行与shell脚本编程大全 (第4版) 》笔记-汇总 ( Chapter17-ChapterB )
十七.创建函数 bash shell 提供了用户自定义函数功能,可以将 shell 脚本代码放入函数中封装起来. 函数是一个脚本代码块,你可以为其命名并在脚本中的任何位置重用它.每当需要在脚本中使用该 ...
- linux 命令行与shell脚本编程大全
linux 命令行与shell脚本编程大全 第一章 Linux LiveCD就是从cd读取的系统,由于没法将数据写入到cd,所以一旦重启,之前操作过后的一切数据都会丢失. 第二章 第三章 1.man手 ...
最新文章
- [Leetcode] Insertion Sort List
- Convert Sorted Array to Binary Search Tree - LeetCode
- java cpu 占用高问题定位
- zabbix3监控ESXI主机
- python编写程序计算1+2+3+......+100和_Python3:计算两个列表总和为100的所有排列的最有效方法是什么?...
- 音视频开发(23)---音视频直播技术--10分钟搭建好直播平台
- 任正非:未来是云时代,华为也要转向云战略
- Spring Boot 配置文件之前缀属性注入
- Java学习笔记(2)----散列集/线性表/队列/集合/图(Set,List,Queue,Collection,Map)
- 团购系统开发,开源团购商城系统,PC+WAP+APP三合一
- 2021 年使用人数最多的5款主流前端框架点评
- 惠普打印机双击之后没有扫描_惠普打印机 找不到 扫描图标 怎么办,急需扫描一些证件 ,求救...
- 计算机硬盘的文件怎么删除文件,如何彻底删除文件?彻底删除硬盘数据的几种方法-电脑教程...
- Linux权限设置方法
- mongodb导入数据
- “泰迪杯”挑战赛 - 通过聚类方法对航空客运的客户进行细分
- 如何搭建自己的cdn
- EMNLP-21-Learning from Noisy Labels for Entity-Centric Information Extraction-noise label
- SQL Server修改表结构,添加约束
- 学python第一弹 用IDLE启动python
热门文章
- [css] 请说说*{box-sizing: border-box;}的作用及好处有哪些?
- [js] 根据元素ID遍历树形结构,查找到所有父元素ID
- 前端学习(2847):css鼠标样式
- 前端学习(2237):react实现疫情数据
- 前端学习(1869)vue之电商管理系统电商系统之配置axios发出登录请求
- 前端学习(235):css HACK
- QT Openssl no OPENSSL_Applink 解决
- vue-cli 4.x 配置 htmlWebpackPlugin.options.title
- 避免switch嵌套的一种方法
- RS(2)--从文本数据到用户画像