[Perl]Archive::Zip使う前に読んでほしいエントリ
12 лет назад
ネタ
#!/usr/bin/perl
use strict;
my $q=0;
our $a=1;
our $z=555;
{
my $q="null";
local $a="five";
print '$q = ',$q,"\t\$a = ",$a,"\t\$z = ",$z,"\n--\n";
}
print '$q = ',$q,"\t\$a = ",$a,"\t\$z = ",$z,"\n--\n";
Прочитай скрипт, запусти, помедитируй. Всё ли понятно?
#!/usr/bin/perluse CGI;use strict;my $q = new CGI;my $q->import_names('R'); # импорт данных в пространство имён Ropen my $f, ">q.txt"; # открываем файл для записи.# и пишем данные полученные из формы,# обращение к содержимому поля происходит так: $NameSpase::fieldname.print $f $R::mytextarea1, $R::mytextarea2;
var email = 'test@mail.org'
if(!(/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(email)))
alert('Invalid Email');
$ ifconfig eth0 hw ether 00:01:02:03:04:05или
$ ip link set eth0 address 00:01:02:03:04:05
youtube-dl -o vid.flv "http://www.youtube.com/watch?v=foobar"Некоторые ролики требуют ввести логин с паролем, для этого предусмотрены ключи -о и -р:
youtube-dl -u login -p pass "http://www.youtube.com/watch?v=foobar"Так же имеется возможность скачивать ролики требуемого качества. Для этого используются ключи -b или --best-quality - в наилучшем доступном качестве, -m или --mobile-version - мобильная версия ролика и -d или --high-def.
текст в теге ссылка внутри тега будет ссылкой тег будет самим собой, но он тут не нужен
НАЗВАНИЕ
CGI::Ajax - перловый модуль для написания асинхронных веб приложений
СИНОПСИС
use strict;
use CGI; # или любой другой CGI:: из handler/decoder
use CGI::Ajax;
my $cgi = new CGI;
my $pjx = new CGI::Ajax( 'exported_func' => \&perl_func );
print $pjx->build_html( $cgi, \&Show_HTML);
sub perl_func {
my $input = shift;
# do something with $input
my $output = $input . " was the input!";
return( $output );
}
sub Show_HTML {
my $html = <<EOHTML;
<HTML>
<BODY>
Enter something:
<input type="text" name="val1" id="val1"
onkeyup="exported_func( ['val1'], ['resultdiv'] );">
<br>
<div id="resultdiv"></div>
</BODY>
</HTML>
EOHTML
return $html;
}
Когда вы используете CGI::Ajax с приложением, оно отправляет собственный заголовок,
можно его поскипать:
my $pjx = new CGI::Ajax(
'exported_func' => \&perl_func,
'skip_header' => 1,
);
$pjx->skip_header(1);
print $pjx->build_html( $cgi, \&Show_HTML);
*полнофункциональные примеры лежат в папке 'scripts/' дистрибутива*
ОПИСАНИЕ
CGI::Ajax объектно ориентированный модуль предоставляющий уникальный механизм
для использования perl асинхронно из HTML страниц с javascript.
CGI::Ajax освобождает пользователя от написания большого количества кода,
за исключением объединения экспортируемого метода с определеннм документом
событием(таким как onClick, onKeyUp, и т.п.). CGI::Ajax так же хорошо
совмещается с HTML содержащим более сложный код javascript.
CGI::Ajax поддерживает методы возвращающие один или множество
результатов на страницу, и поддерживает возврат значений для множества
DIV элементов на HTML странице.
При использовании CGI::Ajax, URL для HTTP запросов GET/POST генерируется
автоматически на основании вывода событий HTML и страница динамически
обновляется получая данные из функций perl.
CGI::Ajax поддерживает маппинг URL для своих функций, так что вы можете
распределить код по нескольким скриптам.
Кроме Class::Accessor, модуля используемого для генерации методов доступа
CGI::Ajax, CGI::Ajax не требует установки дополнительных пакетов или системы
управления контентом, и т.п.
Мы добавили поддержку для других CGI handler/decoder модулей, таких как
CGI::Simple или CGI::Minimal, но мы не можем протестировать их, так как
работаем только с mod_perl2. CGI::Ajax проверяет наличие header() метода
для объекта CGI и использует его. Если method() не доступен, он создаёт
собственный минимальный заголовок.
Мы стараемся свести генерируемый javascript к минимуму, но всё же предоставить
пользователю разнообразные методы работы с CGI::Ajax. И ОЧЕНЬ мало javascript.
* bzr * debhelper (>= 5) * python-dev * python-gtk2-dev * buildtools * gstreamer0.10-plugins-good * python-gst0.10 * python * python-gtk2 * python-glade2 * python-dbus * python-pyvorbis * python-mutagen * python-pysqlite2 | python (>= 2.5) * python-elementtree | python (>= 2.5) * gstreamer0.10-plugins-base * intltoolСтавим:
$ sudo apt-get build-dep exaileПосле выполнения необходимо убедиться в том, что python-mutagen установлен, иначе exaile будет выдавать ошибки.
$ bzr checkout http://code.launchpad.net/exaile/0.3.x exaile03Для версии 0.2.x stable branch:
$ bzr checkout http://code.launchpad.net/exaile/0.2.x exaile02перейти в папку с исходниками и собрать их:
$ cd exaile0* $ make $ sudo make installОбновление:
$ bzr update $ make clean $ make $ make installВзято из FAQ http://www.exaile.org/wiki/Downloading_and_Compiling