How to create cron statement to run for multiple hours

You cannot, you can use either multiple values OR a range

0 1,2,3,4,5,6,7,8,10,11,12,13,14,15 * * *

Source:

Time tags are separated by spaces. Do not use spaces within a tag, this will confuse cron. All five tags must be present. They are a logical AND of each other. There is another space between the last time tag and the first command.

A time tag can be a wildcard "*", which means "all". It can be one value, several values, a range, or a fractional range.


I find it more readable to have two crontab entries:

0 1-8 * * * ...
0 10-15 * * * ...