Pull to refresh

Comments 25

немного понудю

my ($interface,$ipconf) = @_;

my $url = shift;

Прям глаза режет
А как правильно будет?
Извиняюсь, первый перловый опыт.
ну вот я и написал как правильно.

(my $interface,my $ipconf) = @_;
меняем на
my ($interface,$ipconf) = @_;

и
my $url = $_[0];
меняем на
my $url = shift;

ну а если первый опыт то вообще можно не обращать внимания на мои слова)
А, всё, понял.
Впрочем, мне кажется не совсем очевидным, зачем shift. И не очевидным, с каким массивом он работает, но это — фича языка, уже понял.
shift без параметров работает как раз с @_
не всегда. Распостраненная ошибка новичков, кстати с работой функции shift. Пожалуй автору стоит познакомиться с ламабуком для того, чтобы лучше понимать Перл. А поведение конкретно функции shift распишет
$ perldoc -f shift

Perl язык неочевидных тонкостей, привыкайте. А вот если нужен one way очевидности, то это уже питон.
В контексте функции всегда. Или я что то путаю. Или Вы?
Да, в контексте функции всегда. Но я помню как сам ошибся, неправильно использовав ее вне функции. Вы правильно сказали, но слишком широко. И пока программист не привык уточнять и проверять такие вещи (а судя по коду и посту, человек с нуля начал писать сразу на Perl) ему стоит уточнять, что тут тоже есть всегда более, чем один путь развития событий… :D
Согласен, я уже после отправки комментария, понял что я слишком широко ответил!
Да нет, не с нуля. Искренне надеюсь, что хоть на джуниора меня уже хватит. Так что критика приветствуется.
На качество кода однозначно сказалось то, что от первого знакомства с языком до изложенного скрипта прошёл 1 день. Действительно, не вникал во все тонкости языка.

И не стоит думать, что прежде, чем написать комментарий, я не прочёл ман на shift и не поглядел, когда с какими данными работает по-умолчанию. Наоборот, потому и выразил сомнение, решив, что $_[0] лучше указывает на то, с чем работаем, чем shift. В общем, здесь уже больше роль играют принятые негласные стандарты написания.
Как-то забыл дописать — на джуниора в PHP.
| Поскольку… ни Python ни Perl я не знаю, делать будем на перле.
Ээ…
Perl ближе к Си, чем питон.
Ага, ибо
Perl ne 'перл'
Да, а что? Логично же!
Эх… Хотел написать такой скрипт для роутера на системе MirotikOS — так там https не поддерживается, а в другой роутер на базе OpenWRT не могу впихнуть curl, т.к. флеш очень маленький.
Как будет свободное время — попробую на какой-нибудь бесплатном хостинге с поддержкой php и curl сделать скрипт.
Т.е. тем же wget'ом пинаем заранее известный url, а тот уже апдейтит запись DNS? О том речь идёт, правильно понял?
Да, именно так. Роутер раз в минуту пинает скрипт на сервере, если айпи изменился — этот скрипт меняет запись в DNS.
На микротик OpenWRT можно поставить в виртуалку
Очень не хочется плодить сущности. И так два роутера на столе. Один проводной MikroTik и Dlink 615 прошитый в OpenWRT, как точка доступа WiFi.

Держать ещё один в виртуалке в микторике лишь для того, чтобы обновлять DNS — это я считаю лишней тратой ресурсов. Тем более микротик у меня один из самых слабеньких, 750GL.
Вот только сегодня думал, как реализовать на PDD смену IP-адреса в А-записи при падении основного инет-канала.
Насколько я понимаю предполагается токен получать вручную и вписывать в скрипт?
Да, именно так. При том, предполагается яндексом: именно получение вручную и указано как способ получения токена.
Sign up to leave a comment.

Articles