#!/usr/bin/perl #----------------------------------------------------------------------------- # # clockd # #----------------------------------------------------------------------------- @mname = ("Jan", "Feb", "Mar", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"); open(INITTAB, "/etc/inittab") || exit(1); while() { chop; next unless (/^(\d+):\d+:respawn:.*getty/); unshift(@cons, $1); } close INITTAB; while (1) { foreach (@cons) { open(VCS, "+>/dev/vcs$_") || exit(0); seek(VCS, 140, 0); read(VCS, $plus, 1); next if ($plus ne "+"); seek(VCS, 380, 0); read(VCS, $plus, 1); next if ($plus ne "+"); ($sec, $min, $hour, $mday, $mon, $year, undef, undef, undef) = localtime(time()); seek(VCS, 222, 0); $ds = sprintf("%02d. %3s %04d", $mday, $mname[$mon], $year+1900); print VCS $ds; seek(VCS, 302, 0); $ts = sprintf(" %02d:%02d:%02d", $hour, $min, $sec); print VCS $ts; close VCS; } sleep 1; }