A detecção de rede inativa geralmente é tratada com um script de shell, como você fez. Uma simples busca na web por 'linux sleep idle' indica pelo menos 3 scripts fáceis de encontrar para este problema.
Se você copia um script existente ou escreve o seu, não há motivo para executá-lo a cada segundo. Você pode criar facilmente uma tarefa cron para executá-la a cada 30 segundos. A maioria dos usuários não deseja que o servidor seja desligado antes de ficar ocioso por 5-15 minutos, portanto, a precisão por segundo não é necessária. Alguns usuários só executam o script uma vez a cada 20 minutos, o que duraria a máquina 30 minutos depois de ficar inativo, em média.