#в функции с тегом load
scoreboard objectives add Time dummy
#в функции с тегом tick
#записываем игровое время в счётчик
#в счётчеке будет время в тиках от начала дня (от /time set 0)
execute store result score *dayTime Time run time query daytime
#здесь я делю время на 1000 и получаю остаток от деления, и проверяю если оно будет равно нулю, то вывожу текст
#т.е. текст будет выводиться раз в 1000 тиков или 50 секунд
scoreboard players set *TIME_PART Time 1000
#тут стоит подметить что операция будет записываться в *dayTime Time заменяя предыдущее значение
scoreboard players operation *dayTime Time %= *TIME_PART Time
execute if score *dayTimePart Time matches 0 run say "123"