Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/blacknon/hwatch
A modern alternative to the watch command, records the differences in execution results and can check this differences at after.
https://github.com/blacknon/hwatch
command-line monitoring rust terminal-ui tui watch
Last synced: 3 months ago
JSON representation
A modern alternative to the watch command, records the differences in execution results and can check this differences at after.
- Host: GitHub
- URL: https://github.com/blacknon/hwatch
- Owner: blacknon
- License: mit
- Created: 2018-02-06T08:01:20.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-04-15T14:54:50.000Z (about 1 year ago)
- Last Synced: 2024-01-14T21:24:07.817Z (5 months ago)
- Topics: command-line, monitoring, rust, terminal-ui, tui, watch
- Language: Rust
- Homepage:
- Size: 21.9 MB
- Stars: 599
- Watchers: 8
- Forks: 13
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Lists
- my-awesome-stars - blacknon/hwatch - A modern alternative to the watch command, records the differences in execution results and can check this differences at after. (Rust)
- awesome-stars - blacknon/hwatch - A modern alternative to the watch command, records the differences in execution results and can check this differences at after. (Rust)
- awesome-stars - blacknon/hwatch - A modern alternative to the watch command, records the differences in execution results and can check this differences at after. (Rust)
- awesome-stars - blacknon/hwatch - `★708` A modern alternative to the watch command, records the differences in execution results and can check this differences at after. (Rust)
- my-stars - blacknon/hwatch - A modern alternative to the watch command, records the differences in execution results and can check this differences at after. (Rust)
- awesome-ratatui - hwatch - Alternative watch command with command history and diffs. (💻 Apps / 🌌 Other)
README
hwatch
======hwatch - alternative watch command.
## Description
`hwatch` is a alternative **watch** command.
That records the result of command execution and can display it history and diffs.### Features
- Can keep the history when the difference, occurs and check it later.
- Can check the difference in the history. The display method can be changed in real time.
- Can output the execution result as log (json format).
- Support ANSI color code.
- Execution result can be scroll.## Install
### macOS (brew)
brew install hwatch
### macOS (MacPorts)
sudo port install hwatch
### Arch Linux (AUR)
paru -S hwatch
### Cargo Install
cargo install hwatch
## Usage
hwatch 0.3.10
blacknon
A modern alternative to the watch command, records the differences in execution results and can
check this differences at after.USAGE:
hwatch [OPTIONS] ...ARGS:
...OPTIONS:
-B, --beep
beep if command has a change result--mouse
enable mouse wheel support. With this option, copying text with your terminal may be
harder. Try holding the Shift key.--tab_size
Specifying tab display size [default: 4]-A, --aftercommand
Executes the specified command if the output changes. Information about changes is
stored in json format in environment variable ${HWATCH_DATA}.-c, --color
interpret ANSI color and style sequences-d, --differences
highlight changes between updates-t, --no-title
hide the UI on start. Use `t` to toggle it.-N, --line-number
show line number--no-help-banner
hide the "Display help with h key" message-x, --exec
Run the command directly, not through the shell. Much like the `-x` option of the watch
command.-l, --logfile
logging file-s, --shell
shell to use at runtime. can also insert the command to the location specified by
{COMMAND}. [default: "sh -c"]-n, --interval
seconds to wait between updates [default: 2]-h, --help
Print help information-V, --version
Print version informationwatch window keybind
| Key | Action |
|-------------------------------|-------------------------------------------------------------|
| ↑, ↓ | move selected screen(history/watch). |
| ← | select watch screen. |
| → | select history screen. |
| H | show help window. |
| C | toggle color. |
| D | switch diff mode. |
| N | switch line number display. |
| T | toggle the UI (history pane and header). |
| Backspace | toggle the history pane. |
| Q | exit hwatch. |
| 0 | disable diff. |
| 1 | switch watch type diff. |
| 2 | switch line type diff. |
| 3 | switch word type diff. |
| O | switch output mode(output->stdout->stderr). |
| Shift+O | show only lines with differences(line/word diff mode only). |
| F1 | only stdout print. |
| F2 | only stderr print. |
| F3 | print output. |
| + | increase interval. |
| - | decrease interval. |
| Tab | toggle select screen(history/watch). |
| / | filter history by string. |
| * | filter history by regex. |
| Esc | unfiltering. |## Configuration
If you always want to use some command-line options, you can set them in the
`HWATCH` environment variable. For example, if you use `bash`, you can add
the following to your `.bashrc`:```bash
export HWATCH="--no-title --color --no-help-banner"
```## Example
### interval 10 second
Use the -n option to specify the command execution interval.
```bash
hwatch -n 3 command...
```
### logging output
The command execution result can be output as a log in json format.
```bash
hwatch -n 3 -l hwatch_log.json command...
```When you check the json log, you can easily check it by using [this script](https://gist.github.com/blacknon/551e52dce1651d2510162def5a0da1f0).
### Use shell function
If you want the shell function to be executed periodically, you can specify the shell command to be executed with -s as follows.
```bash
# bash
hwatch -n 3 -s 'bash -c "source ~/.bashrc"; {COMMAND}' command...# zsh
hwatch -n 3 -s 'zsh -c "source ~/.zshrc"; {COMMAND}' command...
```
### ANSI Color code
If you want to see output colored with ANSI color code, enable color mode.
To enable color mode, run hwatch with the `-c` option.
Alternatively, you can enable / disable the color mode with the C key during execution.```bash
hwatch -n 3 -c command...
```
### diff view
To enable color mode, run hwatch with the `-d` option.
There are several "diff modes" available.
Switching can be done with the D key.```bash
hwatch -n 3 -d command...
```#### watch diff
#### line diff
#### word diff
### history filtering
You can filter history as a string with / key and as a regular expression with * key.