Dado o nome do arquivo e a estrutura de diretório, você provavelmente pode usar apenas find
e sort
:
find backup -type f -iname '*.tar.gz' | sort -r | head -1
Isso deve retornar o arquivo mais novo. Datas da forma YYYY-MM-DD/HHMM
classificadas lexicograficamente também dão uma ordem classificada em relação ao tempo.
Para obter este arquivo em uma variável, use o comando de substituição:
newest_file=$(find backup -type f -iname '*.tar.gz' | sort -r | head -1)