У меня есть основная программа mytool.pl, которая будет запущена из командной строки. Существует несколько вспомогательных скриптов special1.pl, special2.pl и т. Д., Каждый из которых содержит пару подпрограмм и хэш, все одинаково названные по сценариям. Предположим, что они называются MySpecialFunction(), AnotherSpecialFunction() и% SpecialData.Наличие сценария perl использует один из нескольких вторичных скриптов
Я хочу, чтобы mytool включил/использовал/импортировал содержимое одного из специальных * .pl файлов, только один, в соответствии с параметром командной строки. Например, пользователь будет делать:
bash> perl mytool.pl --specialcase=5
и MyTools будет использовать MySpecialFunction() из special5.pl, и игнорировать все другие специальные * .pl файлы.
Возможно ли это и как это сделать?
Важно отметить, что выбор того, какой специальный файл использовать во время выполнения, поэтому добавление «использования» в верхней части mytool.pl, вероятно, неверно.
Примечание. Я программист на длительный период времени C, а не эксперт perl; Возможно, я прошу что-то очевидное. Это для одноразового проекта, который превратится в пыль всего за месяц. Ни mytool.pl, ни специальный? .pl (или perl) не будут интересны после завершения этого короткого проекта. Поэтому мы не заботимся о решениях, которые разрабатываются или требуют изучения некоторой глубокой магии. Быстро и грязно. Я предполагаю, что модуль модуля Perl для этого слишком переполнен, но понятия не имеет, какие альтернативы есть.
Ключевая идея - использовать ключевое слово 'require'. Найденный cheatsheet на 'use' 'require' 'do' и 'import' (три из которых новы для меня) по адресу http://www.snowfrog.net/2009/05/09/perl-use-require-import -and-do /, который отвечает на несколько нечетких вопросов, которые у меня были в голове. – DarenW
@DarenW Взгляните на документацию Perl, встроенную в Perl. Вы используете программу perldoc для чтения документации. Все это на [web] (http://perldoc.perl.org) тоже. Взгляните на раздел учебника. –