in reply to validate if output of command is numeric or not
To see if you have a number
perldoc -f number -> perlfaq4 -> How do I determine whether a scalar is a number/whole/integer/float? -> http://perldoc.perl.org/Scalar/Util.html#looks_like_number
To quiet not-numeric warning, don't numify empty strings, they're false, so promote them to zero $num ||= 0;
Instead of numbered variables ($cmd1...) use an array, @commands
Exit code is often used to communicate failure, so you probably don't have to guess based on whats a program prints. my preferred way to qx is with Capture::Tiny
#!/usr/bin/perl -- use strict; use warnings; use Capture::Tiny qw/ capture /; my @cmd = ( 'python', '-V' ); my( $stdout, $stderr, $exit ) = capture { system { $cmd[0] } @cmd; };; $exit and die "it failed with $exit and $stderr ";
|
|---|