Первая часть проста:
use autodie qw(:all);
open my $input, '-|', 'os-command', @args;
Понятно, что остаток не намного сложнее:
while (<$input>)
{
next unless m/your regex/;
system 'other-command', $_;
}
Автоматическая проверка ошибок для вызовов open
и system
предоставляется через autodie
.