#!/usr/bin/perl use warnings; use strict; use Tk; startpiper(); my $mw = new MainWindow; my $t = $mw->Scrolled("Text",-width => 80, -height => 25, -wrap => 'none'); $t->pack(-expand => 1); $mw->fileevent(\*CHILD, 'readable', [\&fill_text_widget,$t]); MainLoop; sub fill_text_widget { my($widget) = @_; $_ = ; $widget->insert('end', $_); $widget->yview('end'); } sub startpiper{ open(CHILD, "ls -la |") or die "Can't open: $!"; }