Procura por nome de arquivo diferente em loop

0

Eu quero pesquisar em vários diretórios para encontrar arquivos ausentes. O formato dos diretórios e arquivos é YYYY / MM / file_name_YYYYMMDD.csv. Então, o que eu quero fazer é algo como:

for date in 'list_of_dates.txt'
do
 if [! -f /YYYY/MM/file_name_YYYYMMDD.csv]
   echo $date
 fi

O que não consigo descobrir é como fazer cada iteração procurar o arquivo correto no diretório correto. Existe uma maneira de fazer isso em um script bash?

    
por Gree Tree Python 27.01.2017 / 16:32

1 resposta

2
for dir in ????/??; do
    year=${dir:0:4}
    month=${dir:5}
    days=$(cal "$month" "$year" | awk 'NF {DAYS = $NF}; END {print DAYS}') 
    for date in seq 1 "$days"; do
        filename="file_name_${year}${month}${date}.csv"
        if [[ ! -f /"$year"/"$month"/"$filename" ]]; then
            echo "$filename is missing."
        fi
    done
done
    
por 27.01.2017 / 17:05