Shell编程学习之while循环语句和for循环语句的应用

news/2024/11/19 18:29:46/
  • Shell编程中的while循环:
  • 可以类比C语言中的while循环进行学习,详见本人原创博客链接
https://blog.csdn.net/qq_41878292/article/details/132081302?spm=1001.2014.3001.5502
  • 伪代码表示:
while 表达式
do循环体
done
  • 用法类比Shell编程中的if分支语句;
  • while死循环用法:
  • 伪代码表示:
while [ 1 ]
do循环体
donewhile ((1))
do循环体
done
while true
do循环体
done
  • 示例代码:
#!/bin/bashwhile [ 1 ]   #while((1))或while true
do              datesleep 2
done
  • 运行结果:
2023年 08月 20日 星期日 00:28:35 PDT
2023年 08月 20日 星期日 00:28:37 PDT
2023年 08月 20日 星期日 00:28:39 PDT
2023年 08月 20日 星期日 00:28:41 PDT
2023年 08月 20日 星期日 00:28:43 PDT
...
  • 实例要求:
  • 编写Shell脚本,实现1到100之间所有数的求和;
  • 测试代码:
#!/bin/bashi=1
sum=0
while [ $i -le 100 ]   
do              sum=$((sum+i))((i++))
doneecho "1+2+3+...+100的计算结果是:$sum" 
  • 运行结果:
1+2+3+...+100的计算结果是:5050
  • Shell编程中的for循环:
  • 可以类比C语言中的for循环进行学习,详见本人原创博客链接
https://blog.csdn.net/qq_41878292/article/details/132084043?spm=1001.2014.3001.5502
  • Shell编程中的for循环可以分为两种类型:
  • C语言格式的for循环类型:
  • 示例代码:
#!/bin/bashfor((i=0;i<10;i++))
doecho "WELCOME TO BEIJING $i"done
  • 运行结果:
WELCOME TO BEIJING 0
WELCOME TO BEIJING 1
WELCOME TO BEIJING 2
WELCOME TO BEIJING 3
WELCOME TO BEIJING 4
WELCOME TO BEIJING 5
WELCOME TO BEIJING 6
WELCOME TO BEIJING 7
WELCOME TO BEIJING 8
WELCOME TO BEIJING 9
  • Shell编程独有的for循环类型:
  • 伪代码表示:
for 变量 in 单词列表
do循环体
done
  • 单词列表的注意事项:
  • 1.列表之间用空格分隔;
  • 2.列表是连续的,可以使用以下格式:
{数字1..数字n}
  • 也能用序列表示,例如,从1开始,到100结束:
`seq 1 100`
  • 若有间隔,比如:从1开始,到100结束,每间隔5个值,取一个值,可以改写成:
`seq 1 5 100`
  • 3.单词列表也可以是命令的结果,需要注意的是命令的结果要使用空格进行分隔;
  • 4.省略语句in单词列表的for循环,这时执行来自终端命令行的参数;
  • 示例代码:
#!/bin/bashfor i in whoami ls pwd
do$i
done
echo "-------------------------------------"
for i in `seq 0 10 100`
doecho "WELCOME TO BEIJING $i "done
echo "-------------------------------------"
for i in {1..5}
doecho "WELCOME TO BEIJING $i "
done
echo "-------------------------------------"
for i in WELCOME TO BEIJING
doecho -n "$i "done
echo " "
echo "-------------------------------------"
for i 
doecho "WELCOME TO BEIJING $i "
done
echo "-------------------------------------"
for i in `ls *.c`
dochmod 777 $i
done
  • 运行结果:
#bash xxx.sh i love you
linux
f1.c  f2.c  f3.c  g1.sh  g2.sh  g3.sh
/home/linux/xxxx
-------------------------------------
WELCOME TO BEIJING 0 
WELCOME TO BEIJING 10 
WELCOME TO BEIJING 20 
WELCOME TO BEIJING 30 
WELCOME TO BEIJING 40 
WELCOME TO BEIJING 50 
WELCOME TO BEIJING 60 
WELCOME TO BEIJING 70 
WELCOME TO BEIJING 80 
WELCOME TO BEIJING 90 
WELCOME TO BEIJING 100 
-------------------------------------
WELCOME TO BEIJING 1 
WELCOME TO BEIJING 2 
WELCOME TO BEIJING 3 
WELCOME TO BEIJING 4 
WELCOME TO BEIJING 5 
-------------------------------------
WELCOME TO BEIJING  
-------------------------------------
WELCOME TO BEIJING i 
WELCOME TO BEIJING love 
WELCOME TO BEIJING you 
-------------------------------------

http://www.ppmy.cn/news/1047122.html

相关文章

Linux之套接字UDP实现网络通信

Linux之套接字UDP实现网络通信 文章目录 Linux之套接字UDP实现网络通信1.引言2.具体实现2.1需要知道的套接字接口1.socket()2.bind()3.recvfrom()4.sendto() 2.2服务器端server.hpp2.3服务器端server.cc2.4客户端Client.cc 1.引言 ​ 套接字(Socket)是计算机网络中实现网络通信…

三重奏的和谐:如何完美对齐公司、部门与个人目标

引言 在企业的运营和管理中&#xff0c;目标的设定与对齐是至关重要的。它不仅决定了公司的方向和愿景&#xff0c;还影响到每一个部门和团队成员的工作内容和效果。如何确保公司目标、部门目标和团队个人目标之间的完美对齐&#xff0c;是每一个管理者都需要面对的挑战。 目…

修改 el-select 背景图 样式

1. 原图------------效果图 2. css /***********大的背景图***************/ .el-popper.is-pure {background: url(/src/assets/imgList/memuBG.png) no-repeat;border: none;background-size: 100% 100%; }/*********选中行的字体***********/ .el-select-dropdown__item.s…

如何在Linux系统上搭建自己的FRP内网穿透

前言 我有一个1核1G的服务器有公网IP但是这个1核1G的服务器太垃圾了,几乎什么都跑不起来,不过网速还行,那我本地还有一个物理主机是一个4核4G的,那我就可以把这台主机安装上linux系统当成一个服务器来使用,然后把网络代理到公网IP上.使用内网穿透这篇文章也就出现了. FRP简介 F…

第一讲:BeanFactory和ApplicationContext接口

BeanFactory和ApplicationContext接口 1. 什么是BeanFactory?2. BeanFactory能做什么&#xff1f;3.ApplicationContext对比BeanFactory的额外功能?3.1 MessageSource3.2 ResourcePatternResolver3.3 EnvironmentCapable3.4 ApplicationEventPublisher 4.总结 1. 什么是BeanF…

什么是cURL?

cURL无处不在。它几乎隐藏在所有设备中&#xff0c;例如汽车&#xff0c;蓝光播放器等。它通过互联网协议传输任意类型数据。 在本文中&#xff0c;我们将揭开cURL神秘命令行工具的面纱&#xff0c;解释它是如何成为一种通用代码的&#xff0c;并举例说明其用法。 cURL是什么意…

article-六轴机械臂(带抓手)运动学分析+轨迹规划

1正运动学分析 采用标准的D-h法进行机械腿模型分析&#xff1a; D-h表如下 &#xff08;2&#xff09;通过&#xff08;1&#xff09;求解出机器人各位姿变换矩阵后&#xff0c;求解机器人手臂变换矩阵 ** ** 。通过matlab 计算&#xff0c;写出机器人末端位置。 正运动学分…

安全技术和防火墙

这里写目录标题 安全技术和防火墙一.安全技术1.相关系统2.防火墙的分类 二.防火墙的基本知识1.Netfilter2.防火墙工具介绍2.1 iptables2.2 firewalld2.3 nftables 3.netfilter中五个勾子函数和报文流向 三.iptables1.iptables的组成概述2.相关操作3.添加新的防火墙规则4.查看规…