如何将缓存添加到curl/wget?

如何将缓存添加到curl/wget?,curl,caching,wget,Curl,Caching,Wget,我有一个脚本,我想作为脚本的一部分执行。但我宁愿避免每次需要脚本时从网络上下载它 所以我认为一种方法是缓存它,我可以编写一个简单的包装器 if ! [ -e ~/.cache/stack-redeploy.pl ] then curl -so ~/.cache/stack-redeploy.pl https://gist.githubusercontent.com/trajano/82982c229948df445ada518d7c6273df/raw/952a15344a1913b02ab

我有一个脚本,我想作为脚本的一部分执行。但我宁愿避免每次需要脚本时从网络上下载它

所以我认为一种方法是缓存它,我可以编写一个简单的包装器

if ! [ -e ~/.cache/stack-redeploy.pl ]
then
  curl -so ~/.cache/stack-redeploy.pl https://gist.githubusercontent.com/trajano/82982c229948df445ada518d7c6273df/raw/952a15344a1913b02ab9e217da909908156369bc/stack-redeploy.pl
fi
~/.cache/stack-redeploy.pl
但这有点麻烦,而且也没有提供TTL,所以它不会永远保留它,以防我更改内容


因此,我想知道是否有curl或wget(或在scoop/brew/apt-get中提供的其他实用程序)选项可以满足我的需要。

而不是
curl-因此
我建议
wget-时间戳-o
-wget将检查磁盘上上次修改的时间,并将其与上次修改的http头进行比较,仅当gist上的脚本比磁盘上的脚本更新时才下载脚本。虽然时间戳可能在大多数情况下都有效,但它不满足我Q中的TTL部分,它将始终连接到该部分。但是,它与我提供的示例相匹配。