Mi script es:
#!/bin/bash
# Path to a lock folder
LOCK_PATH="/Volumes/PROOFS_WATCH/copy.lock"
trap 'rmdir "$LOCK_PATH"; exit' 1 6 15
if mkdir "$LOCK_PATH"; then
echo "Lock file did not exist and was created, Copying..."
# Perform commands
cp /Volumes/PROOFS_WATCH/*.mov /Volumes/PROOFS_WATCH/AME_Processing/
cp /Volumes/PROOFS_WATCH/*.mov /Volumes/PROOFS_TV
rm /Volumes/PROOFS_WATCH/*.mov
# Remove the lock
rm -f "$LOCK_PATH"
fi
Mi salida es:
Lock file did not exist and was created, Copying...
cp: /Volumes/PROOFS_WATCH/*.mov: No such file or directory
cp: /Volumes/PROOFS_WATCH/*.mov: No such file or directory
rm: /Volumes/PROOFS_WATCH/*.mov: No such file or directory
rm: /Volumes/PROOFS_WATCH/copy.lock: is a directory
logout
[Process completed]
rm -f
no elimina la carpeta de bloqueo por alguna razón ...
Me gustaría que este script se ejecute automáticamente a través de Cron cada 60 segundos. Si se está escribiendo un archivo grande, no quiero que se ejecute hasta que se complete la escritura del archivo.
Me estoy dando cuenta de lo que se puede hacer con bash y también quiero automatizar más procesos.