shell脚本入门级教程变量、判断、循环
编写shell脚本之前我们需要知道什么是shell脚本,shell脚本能做什么。
一.简介
什么是shell脚本
-
将要执行的Linux命令保存到一个文件中,然后通过执行这个文件来批量自动执行命令
作用
-
批量执行操作
-
重复执行操作
二.编写shell脚本的基本流程
-
1.#使用vim在/home/下创建一个名为demo1.sh的文件
-
[root@localhost ~]# vim /home/demo1.sh
-
2.#在.sh文件中输入内容,脚本内容第一行格式固定
-
#!/bin/bash
-
3.#输入一些基本命令#创建一个名为tom的用户
-
useradd tom
-
#touch /home/a.doc #在home下创建一个名为a.doc的文件
-
保存内容并退出
-
4.为脚本设置执行权限chmod x /home/demo1.sh
-
5.执行脚本方法1:bash 脚本名
-
[root@localhost ~]# bash /home/demo1.sh
-
方法2:./脚本名[root@localhost ~]# ./demo1.sh
三.变量
-
定义变量:变量名=变量值
-
获取变量:$变量名
-
# 定义变量
-
[root@localhost ~]# name=tom
-
[root@localhost ~]# addr=shanxi
-
[root@localhost ~]# tel=176xxxxxxxx
-
[root@localhost ~]# mail=xxxx@.com
-
#使用变量进行输出#
-
echo:打印输出一个结果到屏幕
-
[root@localhost ~]# echo "我的姓名是$name,我的家在$addr, 我的电话是$tel"输出结果:我的名字是tom,我的家在shanxi,我的电话号码是176xxxxxxxx,我的邮箱是xxxx@.com
四.判断
-
-
单分支语句结构
-
if [ 条件表达式 ]; then
-
指令
-
fi
-
#这段代码的意思是满足[ 条件表达式 ]中的条件则进行指令中的命令
-
-
双分支语句结构
-
if [ 条件表达式 ]; then
-
指令一
-
else 指令二
-
fi
-
#这段代码的意思是满足[ 条件表达式 ]中的条件则进行指令一中的命令
-
#如果不满足[ 条件表达式 ]中的条件则进行指令二中的命令
-
-
多分支语句结构
-
if [ -f file ]; then
-
echo "yes yes yes"
-
elif [ -d file ]; then
-
echo "yes yes"
-
else
-
echo "nonono"
-
fi
-
#这段代码的意思是满足[ -f file ]中的条件则输出yes yes yes
-
[ -f file ] 测试file存在为真且是一个常规文件
-
#如果不满足[ -f file ]中的条件则在进行判断[ -d file ]条件满足则输出yes yes
-
[ -d file ] 测试file存在为真且是一个目录文件
-
#如果不满足[ -d file ]则输出nonono
注意 if的结构为 if then else fi
从上面三个结构中可以看出,条件表达式的左右,以及[ ]的左右都要有空格。
-
数字表达式
-
int1 -eq int2 两数相等为真
-
int1 -ne int2 两数不等为真
-
int1 -gt int2 int1大于int2为真
-
int1 -ge int2 int1大于等于int2为真
-
int1 -lt int2 int1小于int2为真
-
int1 -le int2 int1小于等于int2为真
五.循环
for语句结构
读取不同的变量值,用来逐个执行同一组命令
-
-
for num in {1..10}do
-
echo $num
-
sleep 1
-
done
-
#创建一个变量num变量的取值为{1..10}循环#输出num变量 sleep表示间隔为 1S
while循环
-
#!/bin/bash
-
a=$[$RANDOMP0] #在500中取随机数
-
while true
-
do
-
read -p "enter a number: " input
-
if [[ $input -gt $a ]];then #判断变量input是否大于变量a
-
echo "big" #大于a则输出 big
-
continue #终止当前重新进行循环
-
elif [[ $input -lt $a ]];then #判断变量input是否小于变量a
-
echo "little" #小于则输出 little
-
continue
-
else
-
echo "equal"
-
exit #停止程序
-
fi done
until循环
重复测试某个条件,只要条件不成立则反复循环
-
-
[ $n -gt 50 ]; #创建一个条件 $n大于50
-
do
-
let sum =$n #计算 sum =变量n
-
let n #n 每次循环加一
-
done
-
echo "$sum" #输出变量sum
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgebjkf
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01