Фактическая проблема вашей строки crontab - не $()
или обратные кавычки. Проблема в знаке процента %
. Это имеет особое значение в crontabs.
С справочной страницы:
...
Percent-signs (%) in the command, unless escaped with backslash (\),
will be changed into newline characters, and all data after the
first % will be sent to the command as standard input.
...
Если экранировать знак процента с помощью \
, он должен работать, как и ожидалось:
* * * * * echo $(date +\%F) >> /tmp/date.txt
или
* * * * * echo `date +\%F` >> /tmp/date2.txt
оба работают на моем сайте.