Как с помощью bash
проверить наличие файлов в каталоге?
if ... ; then
echo 'Found some!'
fi
Чтобы было ясно, я не хочу проверять наличие файла конкретный файл. Я хотел бы проверить, содержит ли конкретный каталог какие-либо файлы.
Я выбрал:
(
shopt -s dotglob nullglob
existing_files=( ./* )
if [[ ${#existing_files[@]} -gt 0 ]] ; then
some_command "${existing_files[@]}"
fi
)
Использование массива позволяет избежать условий гонки при чтении списка файлов дважды.