use warnings; use strict; my $ppid = getppid(); open (my $cmdfh, '<', "/proc/$ppid/cmdline") or die "Unable to open ppid cmdline: $!"; my $cmdline = <$cmdfh>; close $cmdfh; if ($cmdline =~ /bash|ksh|csh/) { print "Started by a shell\n"; } elsif ($cmdline =~ /perl/) { print "Perl is the daddy\n"; } else { print "I was created by: $cmdline\n"; }