Страница 1 из 1

[PERL] а где позиционные параметры?

Добавлено: 2009-03-15 13:28:33
Alex Keda
Сабж. Хочу вызвать скрипт как

Код: Выделить всё

/path/to/file start
и в зависимости от параметра что-то делать...
А в какой переменной оно будет?

Re: [PERL] а где позиционные параметры?

Добавлено: 2009-03-15 13:55:16
f_andrey
ну что ты как дитё :) качни книжку, ведь выйдет быстрее и продуктивнее, по моему в переменной @arg, ну как я понял вот из этого ;)
:oops:

Re: [PERL] а где позиционные параметры?

Добавлено: 2009-03-15 14:22:31
Alex Keda
да при чём тут книжка?
я гуглом пользоваться умею.
тока на этот простой вопрос он ответа дать внятного не смог.

Re: [PERL] а где позиционные параметры?

Добавлено: 2009-03-15 14:38:37
f_andrey
:ROFL:
Что то ты сегодня жжешь, вот конкретные примеры, если интересно то поиши книжку есть и на русском, для програмирования думаю очень полезна :sorry:

Re: [PERL] а где позиционные параметры?

Добавлено: 2009-03-15 15:06:35
Alex Keda
мда... а если массива нет что делать?
perl -w ругаиццо

Re: [PERL] а где позиционные параметры?

Добавлено: 2009-03-15 15:11:13
f_andrey
тут не подскажу, но там вроде нужен модуль

Код: Выделить всё

use Getopt::что то;
не забыл подгрузить?

Re: [PERL] а где позиционные параметры?

Добавлено: 2009-03-15 16:30:40
Alex Keda
неа... и так два модуля уже нагрузил - иконв и хостнейм

Re: [PERL] а где позиционные параметры?

Добавлено: 2009-03-15 16:40:59
f_andrey
Ну и что много модулей не бывает, можно и без него реализовать, там в ссылке есть примечание где по книжке искать примеры и таких выборок, в общем как завешал ильичь учится учится и учится ;-)
Блин надо что ль все таки дочитать книжку и начать тренироваться что то кодить :unknown:

Re: [PERL] а где позиционные параметры?

Добавлено: 2009-03-15 16:47:18
Alex Keda
f_andrey писал(а):Ну и что много модулей не бывает, можно и без него реализовать, там в ссылке есть примечание где по книжке искать примеры и таких выборок, в общем как завешал ильичь учится учится и учится ;-)
Блин надо что ль все таки дочитать книжку и начать тренироваться что то кодить :unknown:
я вот книжков не читаю, зато есть реальные задачи - тут быстро кодить учишься.
хотя и не правильно, местами =))

Re: [PERL] а где позиционные параметры?

Добавлено: 2009-03-15 17:00:08
f_andrey
А у меня как раз наоборот как то нет задачь, поэтому шас даже какая то апатия, все никак немогу себе придумать мотивировку :)
Кстати вторая книжка на которую я дал ссылку именно из серии готовых рецептов чтоб не изобретать велосипедов, там задача метод решения, ну и немного объяснено что как почему и альтернативы, так что по моему как раз для решения задачь пока нет глубоких знаний.

Re: [PERL] а где позиционные параметры?

Добавлено: 2009-03-15 17:09:37
Alex Keda
ну, мало чтоли своих скриптов?
найди который работает долго и переписывай.
чем я щас и занимаюсь - но, я вынужденно - ресурсы не резиновые, скоро будет впритирку.
да и на шелле два числа с плавающей точкой сравнить не получилось. тока на перле.
поэтому и ковыряюсь.

Re: [PERL] а где позиционные параметры?

Добавлено: 2009-03-15 18:25:24
zg

Код: Выделить всё

zg# ./1.sh one two three
Argument: one
Argument: two
Argument: three
zg# cat 1.sh
#!/usr/bin/perl -w

foreach (@ARGV) { print "Argument: $_\n"; }
zg#
man 1 perlvar

Код: Выделить всё

       ARGV    The special filehandle that iterates over command-line file-
               names in @ARGV. Usually written as the null filehandle in the
               angle operator "<>". Note that currently "ARGV" only has its
               magical effect within the "<>" operator; elsewhere it is just a
               plain filehandle corresponding to the last file opened by "<>".
               In particular, passing "\*ARGV" as a parameter to a function
               that expects a filehandle may not cause your function to auto-
               matically read the contents of all the files in @ARGV.

       $ARGV   contains the name of the current file when reading from <>.

       @ARGV   The array @ARGV contains the command-line arguments intended
               for the script.  $#ARGV is generally the number of arguments
               minus one, because $ARGV[0] is the first argument, not the pro-
               gram's command name itself.  See $0 for the command name.