Na verdade, o comando GNU date
(que é a implementação padrão no Ubuntu) pode adicionar offsets de data diretamente - por exemplo, para adicionar 3662 segundos (1h, 1min, 2s) a uma determinada data
$ date '+%d.%b.%Y %T' --date="2012-06-13 09:16:16 EDT + 3662 seconds"
13.Jun.2012 10:17:18
No entanto, alguns cuidados são necessários com fusos horários e horário de verão - uma opção mais segura é provavelmente converter o tempo original em segundos desde o início da época e adicionar o deslocamento desejado antes de converter de volta ao formato desejado, por exemplo
$ secs=$(date +%s --date="2012-06-13 09:16:16")
$ date '+%d.%b.%Y %T' --date="@$((secs + 3662))"
13.Jun.2012 10:17:18