#!/usr/bin/perl -w use strict; use warnings; my $condition = 0; sub RunProg # Run program only if it exists { my $CMD = join(' ', @_); my $PRG = ($CMD =~ m/^([a-zA-Z0-9_\/\-.~!]+)/) ? $1 : ''; if (length(`which $PRG`)) { return system("$CMD"); } return -1; } my @args = ('yad --help'); my $RET = eval(($condition ? 'system' : 'RunProg') . '(@args);' ); print "\nRETURN VALUE = $RET\n";