我有一些代码可用来获取最近修改的文件时间的MD5总和
find ./media -type f -printf "%TY-%Tm-%Td %TT %p \n" | sort | more | tail -1 | md5 -r | awk '{print $1}'
我用它为CDN文件生成唯一密钥,其背后的逻辑是文件更改了密钥更改,从而取消缓存并重新加载文件。
无论如何,当我尝试在Mac上运行该程序时,出现错误“ -printf unknown option”,
我翻阅了手册页,但找不到类似的内容,我该怎么做呢?
printf
是特定于GNU find的find
,默认情况下在OS X上不可用。
在Mac上安装findutils,例如,使用Homebrew,使用以下命令:
brew install findutils
您也可以使用Macports或Fink,它们可能也提供此软件包。
要实际使用gnu find,您将需要使用,gfind
因为它find
仍然会链接到find
位于中的OSX /usr/bin/find
。
如果通过自制软件安装的命令复制了系统命令,则自制软件带有一个分接头。
简单地做brew tap homebrew/dupes
,然后再举上面的例子brew install findutils
。
现在,您应该可以使用homebrews find命令,而不必通过显式调用它gfind
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句