flock -x -w 5 ~/counter.txt 'COUNTER=$(cat ~/counter.txt); echo $((COUNTER + 1)) > ~/counter.txt'
Как бы я передал несколько команд, flock
как в примере выше?
Насколько я понимаю, flock
принимает различные флаги (-x для исключительного, -w для тайм-аута), затем файл для блокировки, а затем команду для запуска. Я не уверен, как мне передать две команды в эту функцию (установить переменную с содержимым заблокированного файла, а затем увеличить этот файл).
Моя цель здесь состоит в том, чтобы создать несколько атомарный приращение для файла, блокируя его каждый раз, когда скрипт пытается получить доступ к counter.txt
файлу.