Чтобы заставить ваше выражение работать, изменение &&
для -a
выполнит трюк.
Правильно выглядит так:
if [ -f $VAR1 ] && [ -f $VAR2 ] && [ -f $VAR3 ]
then ....
или как
if [[ -f $VAR1 && -f $VAR2 && -f $VAR3 ]]
then ....
или даже
if [ -f $VAR1 -a -f $VAR2 -a -f $VAR3 ]
then ....
Вы можете найти более подробную информацию в этом вопросе bash: Несколько унарных операторов в выражении if и некоторые ссылки, приведенные там как В чем разница между тестом, [и [[? .
Может быть, код не так. (Поскольку код не манипулирует датой и временем.)
В коде java выполните SELECT CURRENT_TIMESTAMP;
get и проверьте метку времени. Если временная метка неверна, это происходит из-за сервера MySQL.