, а не расположение скрипта.
но я написал новый Perl-скрипт для уничтожения процессов на основе имени процесса / имени пользователя и расширил его, используя классы, чтобы я мог повторно использовать код процесса в других программах. Мой текущий макет -
/home/mutew/src/prod/pskill <-- Perl script
/home/mutew/src/prod/Process.pm <-- Package to handle process descriptions
Я добавил ~ / src / prod в переменную $ PATH для доступа к сценарию из любого места. При запуске сценарий из любого каталога, кроме его резидентного каталога, приводит к «Не удается найти Process.pm в @INC» (что понятно, учитывая, что кроме общих каталогов в / usr, @INC включает только текущий каталог - «.»). Одним из обходных путей, который я использовал, является директива use lib, поэтому -
use lib '/home/mutew/src/prod';
но это главная проблема переносимости. Какие-нибудь решения, которые также позволят мне экспортировать скрипт в другие системы без изменений?
РЕДАКТИРОВАТЬ
Я выбрал правильный ответ «depesz» из-за его простоты и использования основного модуля.Ответ Брайана Д. Фоя, хотя и предлагает другие методы для достижения того же (TMTOWTDI), его вклад в perlfaq8 делает этот вопрос абсолютно излишним.