use Capture::Tiny qw( capture ); use Shell::Source; my $csh; my( $stdout, $stderr, @result ) = capture { $csh = Shell::Source->new( shell => "csh", file => "$ENV{Home}/.cshrc" ); $csh->inherit; };