62 lines
925 B
Plaintext
62 lines
925 B
Plaintext
|
.TH LOCK 1
|
||
|
.SH NAME
|
||
|
lock \- run a command under lock
|
||
|
.SH SYNOPSIS
|
||
|
.B lock
|
||
|
[
|
||
|
.B -w
|
||
|
]
|
||
|
.I lockfile
|
||
|
[
|
||
|
.I command
|
||
|
[
|
||
|
.I argument
|
||
|
\&...
|
||
|
] ]
|
||
|
.SH DESCRIPTION
|
||
|
.I Lock
|
||
|
runs
|
||
|
.I command
|
||
|
(default
|
||
|
.LR rc )
|
||
|
with
|
||
|
.I arguments
|
||
|
while holding
|
||
|
.I lockfile
|
||
|
open and (over)writing at least one byte each minute
|
||
|
to keep the exclusive-access lock alive.
|
||
|
If
|
||
|
.I lockfile
|
||
|
doesn't already have the exclusive-access bit set in
|
||
|
its mode,
|
||
|
the exclusive-access bits are set in its mode and
|
||
|
.BR qid.type .
|
||
|
.PP
|
||
|
Under
|
||
|
.BR -w ,
|
||
|
.I lock
|
||
|
waits for exclusive access to
|
||
|
.I lockfile
|
||
|
instead of just trying once.
|
||
|
.PP
|
||
|
.I Lock
|
||
|
sets
|
||
|
.B /env/prompt
|
||
|
to contain the name of the lock file.
|
||
|
.SH EXAMPLES
|
||
|
Build a
|
||
|
.IR replica (1)
|
||
|
database while preventing collisions with other occurrences.
|
||
|
.IP
|
||
|
.EX
|
||
|
cd /sys/lib/dist
|
||
|
lock scan.lock replica/scan $dist/sources.replica
|
||
|
.EE
|
||
|
.SH SOURCE
|
||
|
.B /sys/src/cmd/lock.c
|
||
|
.SH SEE ALSO
|
||
|
.IR intro (5),
|
||
|
.IR stat (5)
|
||
|
.\" .SH DIAGNOSTICS
|
||
|
.\" .SH BUGS
|