viddy watch 的现代化替代品
Language GoHomepagehttps://github.com/sachaos/viddy 容器调用: 实验性功能使用 docker 模块自动拉取基础镜像,并在首次执行时根据需求重构为一个可直接运行的完整软件镜像。在后续运行中,命令会基于已构建好的镜像快速启动容器,实现秒级响应。所有操作均在容器内部完成,与本地系统完全隔离,无需任何本地依赖,安全、干净且不留痕迹。当因软件版本或依赖发生变化需重构镜像时,会充分利用 Docker 镜像构建的缓存机制,最大限度地复用已下载的依赖与构建成果,大幅缩短重建耗时。该功能仍在测试中,使用过程中如有问题,欢迎在 X-CMD 社区 留言反馈。alpineubuntukalidebianfedorashx docker alpine viddyshxd alp viddyshx docker ubuntu viddyshxd ubu viddyshx docker kali viddyshxd kal viddyshx docker debian viddyshxd deb viddyshx docker fedora viddyshxd fed viddyshx install viddy
x pkg shx pkg use viddy
/egetshx eget sachaos/viddy
/asdfshx asdf use viddy
darwin/brewshbrew install viddy
darwin/portshsudo port install viddy
/wgetshwget -O viddy.tar.gz https://github.com/sachaos/viddy/releases/download/v0.4.0/viddy_Linux_x86_64.tar.gz && tar xvf viddy.tar.gz && mv viddy /usr/local/bin
(win|wsl2)/scoopshx scoop bucket add extras \
&& x scoop install extras/viddy
arch/yayshyay -S viddy
alpine/apkshsudo apk add viddy
/goshgo install github.com/sachaos/viddy@latest
viddy - 带"时间机器"的现代化 watch 命令 如果你还在用传统的 watch 命令来监控终端输出,可能会遇到这样的困扰:命令执行的历史结果一晃而过,想回看之前的输出只能靠滚动终端缓冲;或者正在调试一个间歇性问题,却错过了关键时间点的状态。viddy 就是为这些场景而生的现代化替代品——它保留了 watch 的核心功能,同时加入了"时间机器"模式、历史回溯、Vim 风格快捷键等实用特性,让周期性命令监控变得真正可用。
为什么选 viddy 传统 watch 的设计哲学很简单:每隔一段时间执行命令,清屏显示最新结果。这在简单的监控场景够用,但在复杂工作流中就显得捉襟见肘。
viddy 的设计思路是让监控过程可回溯、可交互。它的核心亮点包括:
时间机器模式:这是 viddy 区别于其他 watch 替代品的标志性功能。开启后,你可以像看视频一样"回放"命令输出的历史变化,用快捷键前进/后退到任意时间点,甚至直接跳转到最早或最新的状态。
完整的输出历史:所有命令执行的结果都会被保存,支持导出和加载历史记录。这意味着你可以把一段监控过程保存下来,稍后复盘分析,或者与他人共享。
内置 pager 浏览:输出内容可以直接在 viddy 内置的 pager 中滚动查看,支持 Vim 风格的快捷键(j/k 上下行,Ctrl+F/Ctrl+B 翻页,g/G 跳转到顶/底),对于输出较长的命令(如日志监控、系统状态查询)非常实用。
差异高亮:自动高亮显示当前输出与上一次执行的差异,快速定位变化点,这对于监控配置文件变更、追踪构建进度等场景特别有用。
核心功能详解 viddy 在兼容传统 watch 的基础上,扩展了一系列实用能力:
功能说明周期性执行支持按指定间隔执行命令,显示最新结果彩色输出保留命令的 ANSI 颜色输出,不会像某些 watch 实现那样把颜色过滤掉差异高亮自动标记输出变化的部分,支持开关切换(快捷键 d)时间机器回放历史输出,支持逐帧/快速跳转(快捷键 Space 开启)历史管理保存和加载执行历史,便于后续分析内置 pager长输出支持滚动浏览,无需依赖外部 less/moreVim 快捷键j/k 移动,/ 搜索,g/G 跳转,符合 Unix 用户习惯执行控制支持暂停/恢复命令执行(快捷键 s),方便定格查看Shell 别名支持解析 shell 别名,无需输入完整命令自定义配置支持配置文件自定义快捷键和颜色主题时间机器模式:viddy 的核心亮点 时间机器模式是 viddy 最具特色的功能。按 Space 进入该模式后,界面会切换到历史浏览视图,此时可以使用以下快捷键:
快捷键功能Shift+J回到过去(上一帧)Shift+K前往未来(下一帧)Shift+F快速回到更早的时间Shift+B快速前往更近的时间Shift+O跳转到最早的历史记录Shift+N跳转到当前最新状态这个模式在调试间歇性问题、观察服务启动过程、分析日志变化趋势时特别有用。比如你在监控一个服务的启动日志,开启时间机器后可以随时回退到某个时间点,反复查看当时的输出状态,而不需要等待问题复现。
常用快捷键速查 除了时间机器相关的快捷键,viddy 还提供了一套完整的操作体系:
快捷键功能Space切换时间机器模式s暂停/恢复命令执行b开关终端响铃d开关差异高亮t显示/隐藏标题栏?显示帮助界面/搜索文本j/kpager 中上下移动h/lpager 中左右移动Ctrl+Fpager 向下翻页Ctrl+Bpager 向上翻页g跳转到页首Shift+G跳转到页尾自定义配置 viddy 无需配置即可使用,但如果你想调整默认行为或快捷键,可以创建配置文件:
Linux: $XDG_CONFIG_HOME/viddy.tomlmacOS: ~/Library/Application Support/viddy.toml配置示例:
toml[general]
shell = "zsh" # 指定执行命令的 shell
disable_mouse = true # 禁用鼠标支持
skip_empty_diffs = false # 是否跳过无变化的执行
[keymap]
# 自定义时间机器快捷键
timemachine_go_to_past = "Down"
timemachine_go_to_future = "Up"
scroll_page_up = "Ctrl-b"
scroll_page_down = "Ctrl-f"
[color]
background = "white" # 背景色,默认继承终端设置适用场景 viddy 适合任何需要周期性执行命令并观察输出的场景:
服务监控:viddy curl localhost:8080/health 监控服务健康状态,配合差异高亮快速发现响应变化构建过程跟踪:viddy make build 查看编译进度,用时间机器回退查看特定阶段的输出系统状态观察:viddy df -h 监控磁盘使用情况,历史回溯帮助分析空间增长趋势日志实时监控:viddy "tail -n 20 /var/log/app.log" 配合 pager 滚动浏览,搜索关键字CI/CD 调试:在持续集成环境中监控部署状态,保存历史便于问题复盘与 watch 的对比 特性传统 watchviddy周期性执行支持支持彩色输出部分支持完整支持差异高亮不支持支持历史回溯不支持支持(时间机器)内置 pager不支持支持搜索功能不支持支持暂停执行不支持支持配置自定义不支持支持使用建议 对于习惯传统 watch 的用户,viddy 完全兼容基本的 -n(间隔秒数)等参数,可以直接替换使用。建议从以下几个场景开始体验:
用 viddy 替代 watch 监控一个服务,感受差异高亮带来的便利开启时间机器模式,尝试在命令执行历史中来回跳转长输出场景使用内置 pager,配合 / 搜索功能快速定位关键信息来源:
https://github.com/sachaos/viddy
相关链接包viddy1minviddy