¿Cómo se prueba la existencia de archivos en un directorio usando bash
?sh: Prueba de existencia de archivos
if ... ; then
echo 'Found some!'
fi
Para que quede claro, no quiero para la prueba de la existencia de un archivo específico . Me gustaría probar si un directorio específico contiene cualquier archivo.
Fui con:
(
shopt -s dotglob nullglob
existing_files=(./*)
if [[ ${#existing_files[@]} -gt 0 ]] ; then
some_command "${existing_files[@]}"
fi
)
Utilizando la matriz evita las condiciones de carrera a partir de la lectura de la lista de archivos dos veces.
¿Qué pasa si el directorio contiene subdirectorios, pero no hay archivos ordinarios? –
@ Keith Thompson, No va a suceder. – ikegami
posible duplicado de [Comprobación de si un directorio contiene archivos] (http://stackoverflow.com/questions/91368/checking-if-a-directory-contains-files) –