mirror of
https://github.com/tldr-pages/tldr.git
synced 2025-08-04 20:15:34 +02:00
flock: improvements and fix of misleading wording (#17373)
Co-authored-by: Managor <42655600+Managor@users.noreply.github.com> Co-authored-by: Sebastiaan Speck <12570668+sebastiaanspeck@users.noreply.github.com>
This commit is contained in:
parent
ae6f3b55e4
commit
b6472a3f08
1 changed files with 16 additions and 8 deletions
|
@ -1,17 +1,25 @@
|
|||
# flock
|
||||
|
||||
> Manage locks from shell scripts.
|
||||
> It can be used to ensure that only one process of a command is running.
|
||||
> Manage file locks from shell scripts.
|
||||
> It can be used to ensure that only one instance of a command is running.
|
||||
> More information: <https://manned.org/flock>.
|
||||
|
||||
- Run a command with a file lock as soon as the lock is not required by others:
|
||||
- Run a command with a file lock as soon as the lock is available:
|
||||
|
||||
`flock {{path/to/lock.lock}} {{[-c|--command]}} "{{command}}"`
|
||||
`flock {{path/to/lock.lock}} {{command}}`
|
||||
|
||||
- Run a command with a file lock, and exit if the lock doesn't exist:
|
||||
- Run a command with a file lock, or exit if the lock is currently being held (with exit code 1):
|
||||
|
||||
`flock {{path/to/lock.lock}} {{[-n|--nonblock]}} {{[-c|--command]}} "{{command}}"`
|
||||
`flock {{path/to/lock.lock}} {{[-n|--nonblock]}} {{command}}`
|
||||
|
||||
- Run a command with a file lock, and exit with a specific error code if the lock doesn't exist:
|
||||
- Run a command with a file lock, or exit with a specific error code if the lock is currently being held:
|
||||
|
||||
`flock {{path/to/lock.lock}} {{[-n|--nonblock]}} {{[-E|--conflict-exit-code]}} {{error_code}} {{[-c|--command]}} "{{command}}"`
|
||||
`flock {{path/to/lock.lock}} {{[-n|--nonblock]}} {{[-E|--conflict-exit-code]}} {{123}} {{command}}`
|
||||
|
||||
- Run a command with a file lock, waiting up to 10 seconds for the lock to be available before giving up:
|
||||
|
||||
`flock {{path/to/lock.lock}} {{[-w|--timeout]}} 10 {{command}}`
|
||||
|
||||
- Backup a bunch of files, waiting for the previous `tar` command to finish if it's still running elsewhere and holding the same lock file (can be used in a `cron` job that runs often):
|
||||
|
||||
`flock {{path/to/backup.lock}} {{tar -cvf path/to/backup.tar path/to/data/}}`
|
||||
|
|
Loading…
Add table
Reference in a new issue