4、流控、循环

if

if 条件测试
then内容
elif 条件测试
then 内容
elif 条件测试
then 内容
else #注意此处没有then 加then是错误语法内容
fi

case

case 变量 in
模式一)#加不加引号一样,匹配空字符时要加""命令序列;;#分号一定不能少
模式二)命令序列;;
模式三)命令序列;;
*)无匹配的默认序列
esac

示例:删除用户

#!/bin/bash
#del user
#by dengwei
#date 2021.4.21read -p "Please input a user: " userid $user&>/dev/null
if [ $? -ne 0 ]; thenecho "username is not exist"exit -1
firead -p "Are sure?[y]" action
case "$action" in
y|Y|yes|YES)userdel -r $userecho "success";;
"*")echo "exit"
esac

简单测试

#!/bin/bash
#del user
#by dengwei
#date 2021.4.21read -p "Please input a user: " userread -p "Are sure?[y]" action
case "$action" in
y|Y|yes|YES)echo "success";;
"*")echo "exit"
esac

for(对文件逐行处理最好用while)

for 变量 in {取值列表}
do  命令序列
donefor 变量 #后面什么都不加表示获取所有参数
do  命令序列
done

示例:

#!/bin/bash
ip=www.baidu.comfor i in {1..100}
do{//将循环放在后台加快速度{}&ping -c1 $ip&>/dev/nullif [ $? -eq 0 ]; thenecho "$ip"fi}&
done
wait#等待前面所有后台结束
echo "finish"{}&#将循环放在后台加快速度{}&

IFS=“\n”按行分割 IFS修改分隔符

#!/bin/bash
IFS="\n"
if [ $# -eq 0 ];thenecho "please input a file"exit -1
fiif  [ ! -f $1 ];thenecho "$1 isn't a file"exit -1
fifor i in `cat $1`
doecho "$i"
done

while

while 条件测试
do循环体
done#<file/$1等会输入重定向

条件测试为真时执行

until

until 条件测试
do循环体
done

条件测试为假时执行

break(同C语言)

continue(同C语言)

exit(同C语言)

shift

将位置变量往左移动, shift n往左移动n个,并减少参数总共个数

./1.sh 1 2 3脚本内部shift 1 一次,参数变为 2 3分别对应$1 $2

shell脚本教程--Bash shell--4.流控、循环相关推荐

  1. 如何在 Linux 中创建并运行 Shell 脚本(Bash 初学者教程)

    文章目录 1.创建并运行第一个 shell 脚本 2.将 shell 脚本转换为 bash 脚本 3.为什么大多数 shell 脚本都包含 #! /bin/bash 在 shell 脚本的开头? 4. ...

  2. 一个不错的shell 脚本教程 入门级

    一个不错的shell 脚本教程 入门级 投稿:mdxy-dxy 字体:[增加 减小] 类型:转载 时间:2011-10-11 我要评论 一个很不错的bash脚本编写教程,至少没接触过BASH的也能看懂 ...

  3. 不错的shell 脚本教程

    [url]http://neoman.iteye.com/blog/1485862[/url] 超强视频教程推荐]方老师shell脚本讲座. 特别适合新手,也是老手复习的好资料 下载地址: (一)sh ...

  4. 学习笔记之Linux Shell脚本教程:30分钟玩转Shell脚本编程

    Linux Shell脚本教程:30分钟玩转Shell脚本编程 http://c.biancheng.net/cpp/shell/ 转载于:https://www.cnblogs.com/pegasu ...

  5. linux shell 执行目录,bash shell脚本执行的几种方法

    bash shell 脚本执行的方法有多种,本文作一个总结,供大家学习参考. 假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/data/shell目录中并已有执行权限. 方法一: ...

  6. PHP执行Shell脚本或Bash脚本文件并返回命令输出详情

    PHP执行shell脚本或者Bash脚本文件实例. system和exec函数可能被配置文件禁用,可以通过修改php配置文件删除被禁用的函数. 1.通过system函数执行 使用实例: <?ph ...

  7. shell脚本基础和shell工具

    目录 1.shell概述 2.shell脚本编程入门基础 3.shell工具 shell概述 shell是一个命令行解释器,它接收应用程序/用户命令,然后调用操作系统内核 shell基础语法 脚本格式 ...

  8. ios重签名shell脚本_iOS逆向——shell重签名及代码注入

    感谢hank老师 上一章我们讲了应用签名原理和重签名原理,不再赘述,没有看过的同学可以点这里-- 这章概述shell脚本重签名.可能有的同学认为有很多工具都能快速的帮助我们重签名实现需求,但我更希望在 ...

  9. 【跟晓月学shell脚本】掌握shell脚本变量原理及概念

    前言 跟晓月一起学shell,死磕shell脚本,让shell脚本学习不再难. 想学习更多shell脚本的案例,可以前往我的师父的shell脚本专栏:shell脚本从入门到实战-案例篇 文章目录 前言 ...

  10. php shell脚本怎么写,Shell脚本编程入门

    一.什么是Shell脚本 示例 看个例子吧: #!/bin/sh cd ~ mkdir shell_tut cd shell_tut for ((i=0; i<10; i++)); do tou ...

最新文章

  1. Python之%s%d%f
  2. 在VS2008.Net下使用WPF开发Web应用程序
  3. QPushButton 点击信号分析
  4. 【深度学习】用 YOLO v5+DeepSORT,打造实时多目标跟踪模型
  5. kaggle中zillow比赛中模型融合的方法及其代码
  6. uml+oopc嵌入式c语言开发精讲_新的程序开发模式出现,传统的嵌入式C语言程序员快要灭绝了?...
  7. Uber柳甄:Uber中国独立核算 谋求国内A股上市
  8. android之获取手机号码、获取手机操作系统版本号
  9. SMT工艺培训一日谈
  10. 如何对萤石云视频解码
  11. Linux内核学习(一)编译内核并运行一个最小系统
  12. 学生成绩分析之成绩的预处理 python3 pandas 学生成绩汇总到一张表
  13. 关于补天SRC新手入门详细介绍(通用漏洞篇)
  14. 神武4虚拟机 进不去怎么办 无法登陆我们应如何解决?
  15. DO-214AC封装尺寸图
  16. 国内外知名源码商城系统盘点
  17. P1209 [USACO1.3]修理牛棚
  18. Pygame从0实战11(泡泡小游戏完成)
  19. 2022国家医保药品目录查询(含各省市药品目录)
  20. 去除Reloaded modules: lib, lib.utils, lib.metrics, lib.data_preparation, model, model.model_config

热门文章

  1. 宽度学习(Broad Learning System)
  2. Print2Flash 3汉化破解版下载
  3. Springboot gzip解压http数据流
  4. 你被选中了——晚会上的随机点名
  5. 机器学习、深度学习笔试题面试题整理
  6. linux不同版本编译,嵌入式ARM+Linux 多个不同版本的交叉编译器的切换方法
  7. 施乐服务器装系统闪EE,施乐7535755633755575驱动安装教程
  8. Java方法及方法的重载
  9. Verilog基础知识4(常用集成门电路的逻辑符号对照表)
  10. Android WebView性能分析与优化