in reply to How do I convert seconds into a readable time?

printf "%d days, %d hours, %d minutes and %d seconds\n",(gmtime 196364 +)[7,2,1,0];
But NB: this only works for intervals less than one month.
tachyon's method (below) works for arbitrarily large values (within integer range; this could be fixed by using Math::BigInt).