Linux学习---shell编程(13-for语句)

本文通过多个实例介绍Bash脚本中for循环的基本用法及应用场景,包括显示目录中所有.sh文件、批量解压tar.gz文件、计算0到100的和以及批量创建用户等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

for语句

基本用法

for i in12345

do

    echo$i

done

 

显示目录中所有的.sh文件

#!/bin/bash

cd /Users/yesiming/testShell

ls *.sh >ls.log

 

y=1

for i in$(cat ls.log)

    do 

        echo$y:$i

        y=$(($y + 1))

    done

 

批量解压tar.gz

#!/bin/bash

cd /Users/yesiming/testShell/tarDir

ls *.tar.gz > tar.log

 

for i in$(cat tar.log)

    do 

        echo"正在解压:$i"

        tar -zxf $i&> /dev/null

    done

 

指定循环次数:0到100的和

#!/bin/bash

a=0

for((i=0; i<=100; i=i+1)) #只有双小括号内,数值才会运算

    do 

        a=$(($a+$i))

    done

echo$a

 

批量添加用户

#!/bin/bash

#初始用户名

read-t30-p"输入名字:" name

#用户个数

read-t30-p"输入数量:" num

#初始密码

read-t30-p"输入密码:" pass

if [!-z"$name"-a!-z"$num"-a!-z"$pass"]

    then

        #num中的数字都替换掉

        y=$(echo$num|sed's/^[0-9]*$'//g)

        #y是空,那么num就是数字啦

        if [-z"$y"]

            then

                for((i=0; i<=$num;i=i+1))

                do

                    /usr/sbin/useradd $name_$i&>/dev/null

                    echo$pass|/usr/bin/passwd --stdin$name_$i&>/dev/null

                done

            else

                echo"请输入正确的数量"

 

        fi

fi

0:x:1002:1002::/home/0:

1:x:1003:1003::/home/1:

2:x:1004:1004::/home/2:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值