sh: Проверить наличие файлов

Как с помощью bash проверить наличие файлов в каталоге?

if ... ; then
   echo 'Found some!'
fi

Чтобы было ясно, я не хочу проверять наличие файла конкретный файл. Я хотел бы проверить, содержит ли конкретный каталог какие-либо файлы.


Я выбрал:

(
   shopt -s dotglob nullglob
   existing_files=( ./* )
   if [[ ${#existing_files[@]} -gt 0 ]] ; then
      some_command "${existing_files[@]}"
   fi
)

Использование массива позволяет избежать условий гонки при чтении списка файлов дважды.

6
задан ikegami 19 January 2012 в 06:45
поделиться