La principal diferencia que está buscando es que cron
no se ejecuta constantemente. Como se explica en man cron
:
cron then wakes up every minute, examining all stored crontabs, check‐
ing each command to see if it should be run in the current minute.
When executing commands, any output is mailed to the owner of the
crontab (or to the user named in the MAILTO environment variable in the
crontab, if such exists). The children copies of cron running these
processes have their name coerced to uppercase, as will be seen in the
syslog and ps output.
En otras palabras, cron
solo se iniciará una vez por minuto y comprobará si debe ejecutarse. Su enfoque de sueño, por otro lado, requeriría que su sleep
comando real , su shell, su terminal y el while
bucle (o lo que sea) se ejecuten al mismo tiempo.
Incluso si estuvieran lanzando el mismo número de procesos, cron
sería mejor. Está escrito precisamente para esto por personas que tienden a ser muy buenas en su trabajo. Está obligado a hacer un mejor trabajo que un simple ciclo de shell.