×

删除过期文件夹,遍历数组, 注意 for in 的写法

2022-09-13 10:24:46 Falcon

删除过期文件夹,遍历数组,注意 for in 的写法

#!/bin/bash

EXPIRE_DAYS=1

LOCAL_DIRS=(/mnt/tmp/Youtube/video /mnt/tmp/Youtube/audio)

for dir in ${LOCAL_DIRS[@]}
do
    find ${dir}  -mtime +${EXPIRE_DAYS} -type d -exec rm -rf {} \;
done

参考

0. 首先创建一个数组

array=(192.168.0.1 192.168.0.2 192.168.0.3)

1. 标准的for循环

for(( i=0;i<${#array[@]};i++)) 
#${#array[@]}获取数组长度用于循环
do
    echo ${array[i]};
done;

2. for … in

1. 不带数组下标

for element in ${array[@]}
#也可以写成for element in ${array[*]}
do
    echo $element
done

2. 带数组下标

for i in "${!arr[@]}";   
do   
    printf "%s\t%s\n" "$i" "${arr[$i]}"  
done  

3. While循环法:

i=0  
while [ $i -lt ${#array[@]} ]  
#当变量(下标)小于数组长度时进入循环体
do  
    echo ${ array[$i] }  
    #按下标打印数组元素
    let i++  
done  


本文收录于