shell 编程 day05

本文详细介绍了for和while循环的基本语法、使用示例以及在处理字符串、数组和文件操作中的应用。还通过实例展示了如何利用这两种循环结构实现特定功能,如计数、字符串截取和死循环的控制。
摘要由CSDN通过智能技术生成

1.for循环

语法:

for 变量 in 容器        
do(换行)
    循环体
done

举例:

不行# 遍历字符串.   (for 循环是不能够依次获取字符串每一个元素)。下面例子中只能打印出一个hello world  
for char in "hello word"
do
    echo 循环体char: ${char}
done

可以# 遍历数组
arr1=(10 20 "abc")
for x in ${arr1[@]}
do
    echo 循环体2x: ${x}
done

可以# 遍历用空格或者换行隔开的多个值
for x in 10 20 "你好" 123
do
    echo 循环体3:${x}
done
```
 

练习:

# 设置目录的路径
user_home="/root"
  
# set count

file_count=0
 
# 来个for循环
for file in "$user_home"/*
do
     if [ -f "$file" ]
     then
              # 计数器+1
          ((file_count++))                                                                                                          
      fi
  done
  
  # 打印结果
 echo "用户根目录下文件个数: $file_count"

while循环

while 条件语句

do

        循环体

done

例子:

# 遍历字符串
str1="helloWorld!"
index=0
len=${#str1}
while [ $index -lt $len ]
do
    echo ${str1:${index}:1}
    index=`expr ${index} + 1`
done

# 计算1+2+3+...+100
num=1
sum=0
while [ ${num} -le 100 ]
do
    sum=`expr ${sum} + ${num}`
    num=`expr ${num} + 1`
done
echo 1+2+3+...+100 = ${sum}

变量 = input(输入提示信息)
read -p 输入提示信息 变量名
# 死循环
while true
do
    read -p "请输入一个数字:" num
    if [ ${num} == 100 ]
    then
        break
    fi
done
``

将指令结果转成数组

  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值