我正在创建一个脚本来轮换我的备份,该脚本的一个重要部分是根据某些条件查找文件,然后将其移动或擦除。
我已经完成了循环,但是不能在循环外使用Array(path_array)。我已经阅读了几篇关于此的文章,但不确定这些答案如何适用于我的具体情况。请参见下面的代码。
谢谢!
#!/bin/bash
# anos=(2016 2017 2018 2019)
# meses=(02)
meses=(01 02 03 04 05 06 07 08 09 10 11 12)
anos=(2018)
source="/volume1/NetBackup/Servers/MIA/"
destination="/volume1/NetBackup/Servers/MIA/_Archive"
######## Pasar los Files del Primer dia del Año a Archiving
for i in ${anos[@]}; do
for j in ${meses[@]}; do
month_start=$(date +$i-$j-01)
month_finish=$(date +$i-$j-02)
# echo $month_start
# echo $month_finish
path_array=(`find $source -type f -not -path "*/_Archive/*" -newermt $month_start ! -newermt $month_finish | cut -sd / -f 6-`)
# echo $path_array
# echo Archivos año: $i mes: $j
#printf '%s\n' "${path_array[@]}"
done
done
printf '%s\n' "${path_array[@]}"
答案 0 :(得分:0)
我猜您想附加到数组
path_array+=( $(find $source -type f -not -path "*/_Archive/*" -newermt $month_start ! -newermt $month_finish | cut -sd / -f 6-) )