System::Sub provides in your package a sub that wraps the call to an external program. The return value is line(s) dependending on context (wantarray). This may be what you need if you want to run external commands as easily as from a Unix shell script but with a perl-ish feel (contextual output). So this is not a universal module for running external programs (like IPC::Run) but instead a simpler interface for a common style of external programs.