#!/usr/bin/perl chop($cwd = `pwd`) unless $cwd = $ENV{'PWD'}; $regexp = shift || die "usage: $0 regexp\n"; for $dir (split(/:/,$ENV{'PATH'})) { chdir($dir =~ m#^/# ? $dir : "$cwd/$dir") || next; opendir(DOT, '.') || next; while ($_ = readdir(DOT)) { next unless /$regexp/o; next unless -f; next unless -x _; print "$dir/$_\n"; } }