...
PERL=/usr/bin/perl
...
$PERL /full/path/to/some_script.pl
...
$PERL /other/full/path/to/other_script.pl
...
####
ken@titan ~/tmp/pm_11153844_cron_paths
$ pwd
/home/ken/tmp/pm_11153844_cron_paths
ken@titan ~/tmp/pm_11153844_cron_paths
$ ls -lR *
lib:
total 1
-rw-r--r-- 1 ken None 633 Aug 13 00:38 maintain.pl
drwxr-xr-x 1 ken None 0 Aug 13 00:36 Site
lib/Site:
total 1
-rw-r--r-- 1 ken None 78 Aug 13 00:36 Utils.pm
template:
total 0
www:
total 0
####
ken@titan ~
$ cat /home/ken/tmp/pm_11153844_cron_paths/lib/Site/Utils.pm
package Site::Utils;
use strict;
use warnings;
our $VERSION = '1.2.3';
1;
####
ken@titan ~
$ cat /home/ken/tmp/pm_11153844_cron_paths/lib/maintain.pl
# standard pragmata
use strict;
use warnings;
# code to get absolute paths
use Cwd 'abs_path';
use File::Basename 'dirname';
my ($BIN_DIR, $LIB_DIR, $TEMPLATE_DIR, $WWW_DIR);
BEGIN {
$BIN_DIR = dirname abs_path __FILE__;
$LIB_DIR = abs_path "$BIN_DIR/../lib";
$TEMPLATE_DIR = abs_path "$BIN_DIR/../template";
$WWW_DIR = abs_path "$BIN_DIR/../www";
}
# test paths
print "\$BIN_DIR[$BIN_DIR]\n";
print "\$LIB_DIR[$LIB_DIR]\n";
print "\$TEMPLATE_DIR[$TEMPLATE_DIR]\n";
print "\$WWW_DIR[$WWW_DIR]\n";
# test 'Site::Utils' found
use lib $LIB_DIR;
use Site::Utils;
print "Site::Utils version: $Site::Utils::VERSION\n";
####
ken@titan ~
$ pwd
/home/ken
ken@titan ~
$ /usr/bin/perl /home/ken/tmp/pm_11153844_cron_paths/lib/maintain.pl
$BIN_DIR[/home/ken/tmp/pm_11153844_cron_paths/lib]
$LIB_DIR[/home/ken/tmp/pm_11153844_cron_paths/lib]
$TEMPLATE_DIR[/home/ken/tmp/pm_11153844_cron_paths/template]
$WWW_DIR[/home/ken/tmp/pm_11153844_cron_paths/www]
Site::Utils version: 1.2.3
####
$BIN_DIR[/home/ken/tmp/pm_11153844_cron_paths/bin]