$ perl -wMstrict -Mdiagnostics -e '"system(/usr/bin/perl /root/test.pl)"' Useless use of a constant ("system(/usr/bin/perl /root/test."...) in void context at -e line 1 (#1) (W void) You did something without a side effect in a context that does nothing with the return value, such as a statement that doesn't return a value from a block, or the left side of a scalar comma operator. Very often this points not to stupidity on your part, but a failure of Perl to parse your program the way you thought it would. ...