flock -x -w 5 ~/counter.txt 'COUNTER=$(cat ~/counter.txt); echo $((COUNTER + 1)) > ~/counter.txt'
Jak mam przekazać wiele poleceń, flock
jak w powyższym przykładzie?
O ile rozumiem, flock
bierze różne flagi (-x dla wyłączności, -w dla limitu czasu), następnie plik do zablokowania, a następnie polecenie do uruchomienia. Nie jestem pewien, w jaki sposób przekazałbym dwa polecenia do tej funkcji (ustaw zmienną z zawartością zablokowanego pliku, a następnie zwiększ ten plik).
Moim celem tutaj jest utworzenie nieco atomowego przyrostu dla pliku poprzez zablokowanie go za każdym razem, gdy skrypt próbuje uzyskać dostęp do counter.txt
pliku.