¿Cómo comprobar la existencia de nombres de archivos específicos y estados de salida? (y si no tiene éxito, haga un bucle hasta que tenga éxito)

¿Cómo comprobar la existencia de nombres de archivos específicos y estados de salida? (y si no tiene éxito, haga un bucle hasta que tenga éxito)

Soy un novato en scripting de bash y he estado buscando en Google este escenario durante unas seis horas sin éxito. He encontrado segmentos de lo que necesito pero no una solución integral.

Aquí está el problema: necesito escribir un código que pueda verificar que existen 3 archivos ( file1.txt, file2.csvy file3.log). Sin embargo, antes de continuar, necesito confirmar que file3.logha dejado de escribir (esto es para confirmar que el script que crea los 3 archivos ha finalizado correctamente).

comprobar la existencia de estos archivos parece bastante fácil usando algo como:

if [ -f -e /path/to/file/file1.txt && /path/to/file/file2.csv && /path/to/file/file3.log]
then
# somehow check the exit status of file3.log
if [$? !=0]
#somehow loop (maybe every 5 minutes) until $?=0
done

O

También estaba pensando, ¿puedo evitar todo esto junto y simplemente verificar el estado de salida del script inicial? pero no estaba seguro porque si había algún tipo de falla y los archivos no se creaban, entonces sería un problema grave porque la siguiente parte del proceso de escaneo demora aproximadamente 2 días...

Lo siento si esto puede parecer una pregunta estúpida, estoy tan metido en el agujero de Google "si-hasta-salir-cero-si no..." que no tengo idea de qué hacer desde aquí.

Respuesta1

Para comprobar que un programa con nombre o un script ha finalizado, utilice el comando:

wait $(pgrep program-name)

información relacionada