lockf
はファイル
file
に対して排他的ロックを獲得します。
この際、必要ならこのファイルを生成します。
そしてそのロックを保持したまま、
引数
arguments
をつけてコマンド
command
を実行します。
command
の実行が完了すると、
lockf
はロックを解放し、
-k
オプションが指定されていなければ
ファイル
file
を削除します。
flock(2)
に述べられている
BSD
スタイルのロック方式が用いられます。
すなわち、
file
が存在するだけではロックされているとは見なされません。
以下のオプションが利用可能です。
-k
|
|
コマンド完了後もロックを保存します (削除しません)。
|
-s
|
|
メッセージ出力を行いません。
ロック獲得の失敗は、終了ステータスにのみ反映されます。
|
-t seconds
|
|
ロック待ちのタイムアウト値を指定します。
デフォルトでは、
lockf
はロック獲得を永遠に待ち続けます。
このオプションによりタイムアウト値が指定されていれば、
lockf
はロック獲得をあきらめるまでに最大
seconds
秒待ちます。
タイムアウトとしては 0 を指定することもでき、
その場合
lockf
はロック獲得に失敗すると即座に終了します。
|
いかなる場合でも、
他のプロセスが保持しているロックを
lockf
が破棄することはありません。