for循环:固定有限次数循环,工作中for使用最多。

语法1:

for 变量名 in 变量取值列表

do

指令…

done

学习方法:记住下面的内容

for 男人 in 世界

do

if [ 有房 ] && [ 有车 ] && [ 有钱 ] && [ 有权 ] && [ … ];then

echo “我喜欢”

else

rm –f 男人

done

下面列举几个for循环语句例子:

直接列出变量列表所有元素,打印1、2、3、4、5

[root@bqh-118 scripts]# vim for.sh
#!/bin/sh
for n in 1 2 3 4 5
do
echo $n
done

语法2:

for ((初始值;循环控制条件;变量变化))

do

指令

done

在语法二中需要注意以下几点:

①初始值:在循环开始时,需要给某个变量赋予初始值,如 i=1。

②循环控制条件:用于指定变量循环的次数,如 i<=100,则只要 i 的值小于等于 100,循环就会继续。

③变量变化:每次循环之后,变量该如何变化,如 i=i+1,代表每次循环之后,变量的值都加 1。

语法二和其他语言中的 for 循环类似,也就是事先决定循环次数的固定循环。先举一个简单的例子。

从1加到100总和:

[root@bqh-118 scripts]# vim for.sh
#!/bin/sh
#no.1
echo "-----------------------------"
for n in `seq 100`
do
((sum+=n))
done
echo "1...100总和为:" $sum echo "=============================="
#no.2
for ((i=1;i<=100;i++))
do
((sum1+=i))
done
echo "1...100总和为:" $sum echo "=============================="
#no.3
echo "1...100总和为:" $((100*(100+1)/2))
echo "-------------------------------"

下面我们来一个实战例子:

扫描192.168.43.110---120 /24网络里,当前在线用户的ip有哪些:

[root@bqh-118 scripts]# vim scan.sh

#!/bin/sh
# ******************************************************
# Author : aゞ锦衣卫
# Last modified: 2019-05-14 23:37
# Email : 1147076062@qq.com
# blog : https://www.cnblogs.com/su-root
# Filename : scan.sh
# Description : Scanning online IP
# ******************************************************
read -p "请输入您要扫描的IP网段:" IP
echo "正在扫描..."
sleep 1
for i in {110..120}
do
if ping -c 1 -W 1 $IP.$i &>/dev/null;then #-c ping 2次;-W 超时2s
echo -e "\033[32m $IP.$i\033[0m is up"
else
echo -e "\033[31m $IP.$i\033[0m is down"
fi
done
echo "扫描完毕!"

ok!

shell for 循环简单用法的更多相关文章

  1. shell expect的简单用法【转】

    用expect实现自动登录的脚本,网上有很多,可是都没有一个明白的说明,初学者一般都是照抄.收藏.可是为什么要这么写却不知其然.本文用一个最短的例子说明脚本的原理. 脚本代码如下:  ######## ...

  2. awk-for循环简单用法

    文本: [root@VM_0_84_centos ~]# cat sshd.txt 1 2 3 4 5 6 7 8 9 循环打印上述文本 for 循环的固定格式   i=1设置i的初始变量  i< ...

  3. shell的一些简单用法

    一 BASH的属性 BASH中会存储一些自身属性的参数,启用或关闭某一项功能 例如控制* .字符是否为通配 查看参数 set -o 关闭noglob参数 set -o noglob ls * ls: ...

  4. Shell while循环详解

    while 循环是 Shell 脚本中最简单的一种循环,当条件满足时,while 重复地执行一组语句,当条件不满足时,就退出 while 循环. Shell while 循环的用法如下: while  ...

  5. Linux Shell系列教程之(十)Shell for循环

    本文是Linux Shell系列教程的第(十)篇,更多Linux Shell教程请看:Linux Shell系列教程 基本任何语言都有自己的循环语句,Shell当然也不例外,今天就为大家介绍下Shel ...

  6. centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件、目录属性 shell数组简单用法 $( ) 和${ } 和$(( )) 与 sh -n sh -x sh -v 第三十五节课

    centos   shell脚本编程1 正则  shell脚本结构  read命令  date命令的用法  shell中的逻辑判断  if 判断文件.目录属性  shell数组简单用法 $( ) 和$ ...

  7. Linux shell ${}简单用法

    转自:Linux shell ${}简单用法 为了完整起见,我这里再用一些例子加以说明 ${ } 的一些特异功能:假设我们定义了一个变量为:file=/dir1/dir2/dir3/my.file.t ...

  8. shell for循环+case的脚本(监控程序状态)

    分享一个shell for循环+case的脚本(监控程序状态) 分享一个for循环+case的脚本(监控程序状态并执行相关操作) ,供大家学习参考. 复制代码代码如下: #/bin/bash set ...

  9. Knockout简单用法

    Knockout简单用法 在最近做的一个项目中,页面数据全部通过js ajax调用webapi接口获取,也就是说页面的数据全部使用javascript脚本填充,这就想到了使用一个MVVM模式的js框架 ...

随机推荐

  1. 123457123456---熊猫猜谜语02(儿童猜谜语大全)--com.threeObj03.CaiMiYu02

    熊猫猜谜语02(儿童猜谜语大全)--com.threeObj03.CaiMiYu02

  2. (错误)在VMmare中安装centos后不能联网

    一.问题 在VMmare中安装centos后不能联网 在Xshell无法连接centos 二.解决方法 2.1 点击Network Adapter 设置如下图所示,首先我们在虚拟机中将网络配置设置成N ...

  3. cursor -- 定义鼠标样式

    cursor -- 定义鼠标样式 取值: [ [<uri> ,]* [ auto | crosshair | default | pointer | move | e-resize | n ...

  4. c/c++编码规范(3)--google代码规范检测工具cpplint.py

    cpplint.py是来自google开源项目风格错误检测工具.它是一个python脚本,和google开源项目风格指南一同发布.下载地址:https://github.com/google/styl ...

  5. 修改NGUI 3.11 的控件 inputfileld hide input 属性bug

    1.勾选hideinput属性后,输入中文,会出现,无法显示的问题. 2.勾选hideinput属性后,密码框会出现第一个字母被吃掉的问题 解决方案:控件都不要勾选hideinput属性,代码做如下修 ...

  6. 【miscellaneous】MPEG2、MPEG4、H264的差异

    MPEG2.MPEG4.H264的差异 MPEG-2简介 MPEG-2制定于1994年,设计目标是高级工业标准的图象质量以及更高的传输率.MPEG-2所能提供的传输率在3-10Mbits/sec间,其 ...

  7. thinkphp5 引用 phpass加密算法

    引入phpass thinkPHP5 放到扩展目录里 自动加载配置 直接实例化 // 初始化散列器为不可移植(这样更安全) $PasswordHashs = new \PasswordHashs(8, ...

  8. python邮件发送自动化测试报告

    话不多说直接贴代码 # encoding: utf-8import smtplib #发送邮件模块from email.mime.text import MIMEText #邮件内容from emai ...

  9. IO-file-04 文件的创建

    1. package com.bwie.io; import java.io.File; import java.io.IOException; public class FileDemo4 { /* ...

  10. 设计模式的好书 -- ongoing

    1 设计模式--可复用面向对象软件的基础  Erich Gamma. Richard Helm  -- 已经下载了/baiduNetDisk   Design Patterns --- Element ...