fisher/man/man1/wait.md

84 lines
2.2 KiB
Markdown
Raw Normal View History

wait(1) -- Run commands and wait with a spin
============================================
## SYNOPSIS
`wait` *commands* [`--spin`=*arc*|*star*|*pipe*|*ball*|*flip*|*mixer*|*caret*|*bar1~3*]<br>
`wait` *commands* [`--time`=interval] [`--log`=file] [`--format`=format] [`--help`]
## DESCRIPTION
Run *commands* as a background process and wait until the job has finished. Any output to standard error indicates `wait` to return `1` once is done. While it waits, a customizable spinner is displayed in the command line.
## OPTIONS
* `-s --spin=style|string`:
Set spinner style. See `Styles` for a list of styles and instructions on how to use your own character sequences, progress bar usage, etc.
* `-t --time=interval`:
Set spinner transition time delay in *seconds*. A large value will refresh the spinner more slowly. You may use decimal numbers to represent smaller numbers.
* `-l --log=file`:
Output standard error to given *file*.
* `-f --format=format`:
Use given *format* to display the spinner. The default format is `"\r@"` where `@` represents the spinner token and `\r` a carriage return, used to refresh / erase the line.
* `-h --help`:
Show usage help.
## STYLES
The following styles are supported via `--spin=style`:
* arc, star, pipe, ball, flip, mixer, caret
* bar1~3
### CUSTOMIZATION
In addition to the default styles, you can specify a string of character tokens to be used each per spinner refresh cycle.
For example `--spin=12345` will display the numbers from 1 to 5, and `--spin=. --format=@` an increasing sequence of dots.
### PROGRESS BARS
Display a progress bar with a percent indicator using `--spin=bar1~3`:
* bar1: [=====] *num*%
* bar2: [#####] *num*%
* bar3: ....... *num*%
You can customize the appearance as follows:
```
--spin=bar:<opening token><fill token><empty slot token><closing token>[%]
```
For example:
```
--spin="bar:[+-]%"
--spin="bar:(@o)"
--spin="bar:||_|"
```
## EXAMPLES
Run a lengthy operation as a background job and display a spinning pipe character until it is finished.
```
wait --spin=pipe "curl -sS $URL"
```
Output any errors to *debug.txt*.
```
if not wait --spin=pipe --log=debug.txt "curl -sS $URL"
return 1
end
```
## SEE ALSO
sleep(1)<br>