2 个版本
使用旧的 Rust 2015
0.1.1 | 2020年6月24日 |
---|---|
0.1.0 | 2020年5月9日 |
#14 in #days
19KB
170 行
cmd_cache 是一个命令行工具,可以运行命令并缓存其输出。如果输出未超过环境变量 CMD_CACHE_MAX_DAYS
的天数,则不会运行命令,而是显示缓存的输出。
它方便缓存长时间运行或耗资源的命令的输出,无需手动处理临时文件。
简单的使用方法,直到缓存过期都会显示相同的日期
cmd_cache date
一个现实生活中的例子,一个懒惰的管理员想要检索多个服务器的 dmesg
cat hosts | parallel cmd_cache ssh -n {} dmesg | grep -i segfault
cat hosts | parallel cmd_cache ssh -n {} dmesg | grep -i oom
[...]
CMD_CACHE_MAX_DAYS
默认为 7 天。它是一个浮点数的天数。将其设置为 0 将强制再次运行命令并刷新缓存。
只缓存 stdout
,stderr
不会被捕获,但会在首次运行命令时显示。
缓存的输出存储在 ~/.cmd_cache
中,永远不会被删除,因为 cmd_cache 被设计为尽可能快地运行(遍历大目录是耗时的),并且可能以不同的 CMD_CACHE_MAX_DAYS
值运行 cmd_cache。
可以使用简单的命令清理缓存目录
find ~/.cmd_cache/ -type f -mtime +90 -delete
依赖项
~6–15MB
~174K SLoC