bash --循环(for while until)

常用循环
1:for
2:while
3:until

for 循环格式:
for  变量 in  列表; do
     循环体
done

for (( 表达式1 ; 表达式2 ; 表达式3 ));do
     循环
done

for (( I=1; I<=100; I++));do
##表达式1   变量初始值
##表达式2   变化判断情况
##表达式3   变化情况
done

while 循环格式

注:条件满足进入循环,  条件不满足 退出循环

while  变量  ;do
     执行
done

until循环格式

注:条件不满足进入循环,   条件满足 退出循环

until 变量;do

执行

done

从格式上看,while 和until 完全一致,但是 进入循环条件完全相反。

下面来几个简单的小脚本工具:

系统中每个用户进行问好

#!/bin/bash
#
N=`wc -l /etc/passwd |cut -d ‘ ‘ -f1`   用wc -l 查看有多少行,截取结果的第一段(数字)
for M in `seq 1 $N`;do                 变量M, 从1到 $N进行循环
   echo "Hello,`head -n $M /etc/passwd | tail -1 | cut -d: -f1` "
done             分别显示 该文件中的几行|取最后一行|截取第一列的用户名

显示所有用户的shell,并向 shell 为 /bash 的用户问好

#!/bin/bash
#
N=`wc -l /etc/passwd | cut -d ‘ ‘ -f1`
for M in `seq 1 $N`;do
        Q=`head -n $M /etc/passwd | tail -1 | cut -d: -f7`
#       echo "$Q"

if  [ $Q = /bin/bash ];then
        echo "Hello,$Q"
else
        echo "$Q"
fi
done

计算 100以内  能被3整除的数的和

%取余

3%2=1

M=0
for I in `seq 100`;do
         N=$[ $I%3 ]                                              
#       echo $N
         if [  "$N" -eq 0 ];then
                M=$[ $M + $I ]
        fi
done
echo $M

随机生成10个数,挑选出最大的和最小的

declare -i M=0
declare -i F=10000000000
for I in `seq 10`;do
    N=$RANDOM

if [ $N -gt $M ];then
        M=$N
elif [ $N -lt $F ];then
        F=$N

fi
done
echo "zui da de shi$M"
echo "zui xiao de shi $F"


写个循环

user1创建到user10   ,用户存在不创建,密码同用户, 

接受一个参数

add: 创建用户

del:删除用户

其他:报错

if [ $1 == ‘add‘ ];then
        for I in `seq 10`;do
                if ! id "user$I" &>/dev/null;then

     useradd  "user$I" && echo "user$I" | passwd --stdin "user$I" &>/dev/null
                echo "user$I chuangjian chenggong"
                else
                echo "user$I yi cunzai  wu fa chuangjian"
                fi
        done
elif     [ $1 == ‘del‘ ];then
        for U in `seq 10`;do
        if id "user$U"&>/dev/null;then

userdel -r "user$U" &&echo "user$U shanchu chenggong" &>/dev/null
        echo "user$U shanchu chenggong"
        else
        echo "user$U bu cunzai"
        fi
        done
else
        echo "cuowu"
        exit 10
fi

时间: 2024-08-01 18:42:33

bash --循环(for while until)的相关文章

bash循环语句

1  )单分支if语句 if 测试条件 :then 如果满足条件就执行这里的代码 f 2)双分支的if语句 if  测试条件:then 如果满足条件就执行这里的代码 else 如果不满足条件就执行这里的 代码 fi 3)  read命令:通过键盘输入数据,将键盘输入的值传递给脚本的中定义的变量,从而完成变量赋值操作 .脚本中使用read命令可以使得用户能够与程序进行交互 read命令的使用格式 # 这里变量名的意义在于将用户输入的值传递给这个变量名,那么在脚本中我们就可以拿到用户输入的值了rea

bash循环控制语句之for循环

一.for循环的语法 for 变量 in 列表; do 循环语句1 循环语句2 循环语句3 -- done 二.用法 用变量去遍历列表,没访问列表中的一个元素就执行一次循环语句,直至列表中元素访问完. 为了熟悉for循环语法的使用,照搬了课程中的练习题,顺便加深对其他基础命令的印象. 练习1:使用for循环创建目录/tmp/1.dir,/tmp/2.dir和/tmp/3.dir,并将它们的权限均修改为750: #!/bin/bash # Date: 2015-03-26 # Author: Ar

bash循环,判断语句总结

bash基本的逻辑判断 for:遍历说有列表的元素 while: 只要判断体为真就一直循环 until: 只要判断体为假就一直循环 if:条件判断语句 在详述这四个命令前,先看下一些基本知识 bash的算数运算 [[email protected] ~]# a=5 [[email protected] ~]# b=7 [[email protected] ~]# echo $a+$b 5+7 上面例子说明a,b是字符不会根据符号自动做运算. 如果要做运算需要$[]括起来, 但是结果是整数 [[e

Bash循环与分支浅谈

一.循环 1.for循环 bash脚本中的for循环,编辑bash文件1.sh,输入代码如下: (例子中的代码目的是输出1到10的数字) 运行1.sh,即在终端输入bash 1.sh,得到的结果如下: 执行结果分析:第一个for循环格式中没有给后面的数字加" ",使得这些数字并非是一个整体,但是第二个for循环格式给后面的数据加了" ",也就是把后面的数字都看作是一个整体,所以输出的时候两个for循环输出结果又差别!!! 2.while循环 while循环示例如下:

Bash循环分类介绍

方法一: 1 #!/bin/bash 2 for i in `seq 1 10` 3 do 4 #code here 5 echo $i 6 done 方法二:C语言风格 1 #!/bin/bash 2 for ((i=1; i<=10; i++)) 3 do 4 printf "%s\n" "$i" 5 done 方法三: 1 #!/bin/bash 2 i=1 3 while [ "$i" -lt "10" ] 4

bash脚本编程:for循环

顺序执行:默认法则,逐条执行各语句 选择执行:分支,条件判断,符合条件的分支予以执行: 循环执行:将同一段代码反复执行有限次,所以,循环必须有退出条件,否则将陷入死循环. 程序代码:语句和表达式组成 控制语句: bash循环控制语句:for  while  until for循环: for var_Name in 列表; do 语句1 语句2 ... done 循环添加指定用户 for userName in gentoo mandriva debian; do useradd $userNam

Bash 实例,第 2 部分

我们先看一下处理命令行自变量的简单技巧,然后再看看 bash 基本编程结构. 接收自变量 在 介绍性文章 中的样本程序中,我们使用环境变量 "$1" 来引用第一个命令行自变量.类似地,可以使用 "$2"."$3" 等来引用传递给脚本的第二和第三个自变量.这里有一个例子: #!/usr/bin/env bash echo name of script is $0 echo first argument is $1 echo second argum

centos6.5 bash基础命令2

@@@第三天第二段 @@stat命令:查看文件的元数据信心!Inode stat FILE... bash文本编辑器编辑器:进行文本内容修改的程序 行编辑器:sed 全屏编辑器:nano, vi, vim @@nano FILE... 用户和权限管理: 1.用户是什么? 2.没有用户计算机也可以正常运行 用户:用户就是计算机系统按需对操作人员授权,标识资源获取的识别符!资源分配,是安全权限模型的核心要素之一 密码:用户认证,对用户是否具有授权进行验证! 多用户的操作系统:同一时间允许多个用户对计

bash脚本添加、删除Linux用户

bash脚本:面向过程的编程中 顺序执行:默认法则,逐条执行各语句 选择执行:分支,条件判断,符合条件的分支予以执行: 循环执行:将同一段代码反复执行有限次,所以,循环必须有退出条件,否则将陷入死循环: 程序代码:语句和表达式组成 控制语句: bash循环控制语句: for while until for循环: for var_Name in 列表; do 语句1 语句2 ... done for userName in gentoo mandriva debian; do useradd $u