Desnudo conmigo, ya que soy nuevo en la flock
herramienta y no he usado descriptores de archivos hasta donde sé.
Tengo un script bash que hace una solicitud cURL y escribe la salida en un archivo llamado resp.txt
. Necesito crear un bloqueo exclusivo para poder escribir en ese archivo y no preocuparme de que varios usuarios ejecuten el script y editen el archivo de texto al mismo tiempo.
Aquí está el código que espero bloquear el archivo, realizar la solicitud y escribir en el archivo de texto:
(
flock -e 200
curl 'someurl' -H 'someHeader' > resp.txt
) 200>/home/user/ITS/resp.txt
¿Es esta la forma correcta de hacerlo? Mi script real es un poco más largo que esto, pero parece que se rompe cuando agrego la flock
sintaxis al script bash.
Si alguien pudiera explicar cómo funcionan estos descriptores de archivos y hacerme saber si estoy bloqueando el archivo correctamente, ¡sería increíble!
flock
funciona? Soy nuevo en los descriptores de archivos: /