#!/usr/bin/perl -w use strict; my $num_subs = `perl -w -0777 -pi -e 'my $c=s/foo/bar/g;print STDOUT "$c\n"' ./foo_test`; printf("num_subs = $num_subs\n"); #### foo food fool foot #### > ./one_liner_wrapper.pl Global symbol "$c" requires explicit package name (did you forget to declare "my $c"?) at ./one_liner_wrapper.pl line 4. Global symbol "$c" requires explicit package name (did you forget to declare "my $c"?) at ./one_liner_wrapper.pl line 4. Execution of ./one_liner_wrapper.pl aborted due to compilation errors. #### #!/usr/bin/perl -w use strict; my $c; my $num_subs = `perl -w -0777 -pi -e '$c=s/foo/bar/g;print STDOUT "$c\n"' ./foo_test`; printf("num_subs = $num_subs\n"); #### > ./one_liner_wrapper.pl Use of uninitialized value $c in concatenation (.) or string at ./one_liner_wrapper.pl line 5. Use of uninitialized value $c in concatenation (.) or string at ./one_liner_wrapper.pl line 5. num_subs =