Вы можете использовать цикл while:
tail -f logfile | while read line;
do
echo $(date) $line;
done
Хотя подразумевается дата выполнения для каждой строки.Вы можете использовать параметры вывода формата команды date, чтобы получить желаемый формат отметки времени.
Я бы использовал базовый эквивалент Perl (script.pl):
while (<>) {
my $date = scalar localtime;
print $date . " " . $_;
}
tail -f logfile | perl script.pl