我正在努力将bash脚本移植到符合SUS/POSIX标准的shell.我能够自己删除大部分的bashisms,但我目前仍然坚持使用最后一个.
该脚本用于根据cron.d目录中的文件生成crontab,它使用'-nt'测试来检查自上次生成crontab以来是否有任何输入文件已更改.
任何人都可以使用该规范中提到的shell实用程序建议一个很好的,SUS兼容的'-nt'检查替换?
实际上,这可能比您当前的解决方案更容易:
if find $DIRECTORY_OF_INPUT_FILES -type f -newer $CRONTAB_FILE | grep -q .; then
$REGENERATE_COMMAND
fi
Run Code Online (Sandbox Code Playgroud)
也就是说,您不需要遍历所有输入文件 - find会为您执行此操作.