Типичный подход, позволяющий избежать одновременного запуска двух экземпляров одного и того же сценария, выглядит следующим образом:
[ -f ".lock" ] && exit 1
touch .lock
# do something
rm .lock
Есть ли лучший способ заблокировать файлы из сценария оболочки, избегая условия гонки? Должны ли каталоги использоваться вместо?