Как правило, ваши скрипты cron будут выполняться под другой учетной записью пользователя и, возможно, для них настроен другой путь к среде.
Попробуйте установить в командной строке полный путь к команде, т.е. /path/to/notify-send "x New Posts"
.
Вы можете использовать which notify-send
со своего обычного терминала, чтобы получить путь для вставки в ваш скрипт.
Вы также можете получить выходные данные из своей команды, чтобы помочь при отладке. Использование оператора backtick вернет вывод, так что вы можете присвоить его переменной и / или вывести ее.
$output = `$command`;
error_log($output);