是否有用于缓存进程输出的 shell 命令或实用程序?

Dan*_*552 5 shell utilities shell-script

希望这是问的正确地方。

是否有与此类似的 unix 工具?

# invokes echo, saves to cache (using command with arguments as key), returns "hi"
cache 10 echo hi 

# wait 2 seconds
sleep 2

# doesn't invoke echo, from cache returns "hi"
cache 10 echo hi 

# wait 10 seconds
sleep 10

# with cache expired, invokes echo, returns "hi"
cache 10 echo hi 
Run Code Online (Sandbox Code Playgroud)

显然 echo 不会是真正的用例。

基本上缓存给定命令+参数的 STDOUT、STDERR 和状态,因此对同一进程的下一次调用不必重新运行它。

我可以编写一个脚本来完成它,但我想知道 unix 工具集中是否有一个我不知道的脚本。

mat*_*tdm 0

据我所知,没有标准或传统工具可以以这种方式工作。然而,搜索“cache stdout”将我带到了https://github.com/Valiev/cache,这似乎是一个可以满足您需求的工具。

  • 当然。但如果你安装了 Python,那就可以了。 (2认同)