#!/usr/bin/perl -w use strict; use MIME::Lite; my $unit = shift; die "No unit given!" unless $unit; my @lt = localtime(time); my $today = sprintf("%i-%02i-%02i", $lt[5] + 1900, $lt[4] + 1, $lt[3]); my $cmd = "journalctl -u $unit --since today"; open my $h, '-|', $cmd or die "horribly"; my $out = do { local $/; <$h> }; close $h; if($out) { my $mail = MIME::Lite->new( From => 'user@source', To => 'user@dest', Subject => "Messages for $unit ($today)", Data => $out ); $mail->send; }